diff --git a/IA.md b/IA.md index 9992243..86b55c5 100644 --- a/IA.md +++ b/IA.md @@ -69,6 +69,8 @@ import { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora, + EliEntradaParagrafo, + EliEntradaSelecao, } from "eli-vue"; ``` @@ -116,6 +118,57 @@ export default defineComponent({ ``` +#### Parágrafo (textarea) + +```vue + + + +``` + +#### Seleção (select) + +```vue + + + +``` + #### Texto com formato/máscara > Regra importante: o `value` emitido é **sempre o texto formatado** (igual ao que aparece no input). @@ -226,6 +279,48 @@ const tabela: EliTabelaConsulta = { valor: { quantidade: 0, valores: [] }, }), }; + +``` + +--- + +## Células da EliTabela (celulaTabela) + +O `eli-vue` expõe o helper `celulaTabela(tipo, dados)` para construir células tipadas. + +Tipos disponíveis atualmente: + +- `textoSimples`: `{ texto: string; acao?: () => void }` +- `textoTruncado`: `{ texto: string; acao?: () => void }` +- `numero`: `{ numero: number; prefixo?: string; sufixo?: string; acao?: () => void }` +- `tags`: `{ opcoes: { rotulo: string; cor?: string; icone?: LucideIcon; acao?: () => void }[] }` +- `data`: `{ valor: string; formato: "data" | "data_hora" | "relativo"; acao?: () => void }` + +### Exemplo: célula `tags` + +```ts +import { celulaTabela } from "eli-vue"; +import { BadgeCheck, Pencil } from "lucide-vue-next"; + +celula: (l) => + celulaTabela("tags", { + opcoes: [ + { rotulo: "Ativo", cor: "success", icone: BadgeCheck }, + { rotulo: "Editar", cor: "primary", icone: Pencil, acao: () => editar(l) }, + ], + }) +``` + +### Exemplo: célula `data` + +```ts +import { celulaTabela } from "eli-vue"; + +celula: (l) => + celulaTabela("data", { + valor: l.criado_em, // ISO + formato: "data", // "data" | "data_hora" | "relativo" + }) ``` > Observação: em modo simulação/local, a tabela pode buscar uma lista completa e aplicar filtro/paginação localmente. diff --git a/README.md b/README.md index 527745a..91ddaf7 100644 --- a/README.md +++ b/README.md @@ -53,6 +53,8 @@ src/ EliTabela.vue index.ts README.md + celulas/ + README.md tipos/ botao.ts indicador.ts @@ -141,6 +143,8 @@ import { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora, + EliEntradaParagrafo, + EliEntradaSelecao, } from "eli-vue"; ``` @@ -238,6 +242,54 @@ export default defineComponent({ ``` +### EliTabela — célula `tags` + +Você pode renderizar múltiplas tags/chips numa célula usando `celulaTabela("tags", ...)`. + +```ts +import { celulaTabela } from "eli-vue"; +import { BadgeCheck, Pencil } from "lucide-vue-next"; + +celula: (l) => + celulaTabela("tags", { + opcoes: [ + { rotulo: "Ativo", cor: "success", icone: BadgeCheck }, + { rotulo: "Editar", cor: "primary", icone: Pencil, acao: () => editar(l) }, + ], + }) +``` + +### EliTabela — célula `numero` com prefixo/sufixo + +Para representar **moeda** ou **unidade de medida**, a célula `numero` aceita `prefixo` e `sufixo`: + +```ts +import { celulaTabela } from "eli-vue"; + +// moeda +celula: (l) => celulaTabela("numero", { numero: l.total, prefixo: "R$" }) + +// unidade +celula: (l) => celulaTabela("numero", { numero: l.peso, sufixo: "kg" }) +``` + +### EliTabela — célula `data` + +Para exibir datas (ISO 8601) com diferentes formatos, use a célula `data`: + +```ts +import { celulaTabela } from "eli-vue"; + +// somente data +celula: (l) => celulaTabela("data", { valor: l.criado_em, formato: "data" }) + +// data e hora +celula: (l) => celulaTabela("data", { valor: l.criado_em, formato: "data_hora" }) + +// relativo (dayjs) +celula: (l) => celulaTabela("data", { valor: l.atualizado_em, formato: "relativo" }) +``` + ## Troubleshooting (problemas comuns) ### 1) "Failed to resolve component" / componente não registrado diff --git a/dist/eli-vue.css b/dist/eli-vue.css index bc899ae..fcf6c74 100644 --- a/dist/eli-vue.css +++ b/dist/eli-vue.css @@ -1 +1 @@ -@font-face{font-family:Google Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(https://paiol.idz.one/estaticos/GoogleSans/GoogleSans-VariableFont_GRAD,opsz,wght.ttf) format("truetype")}@font-face{font-family:Google Sans;font-style:italic;font-weight:100 900;font-display:swap;src:url(https://paiol.idz.one/estaticos/GoogleSans/GoogleSans-Italic-VariableFont_GRAD,opsz,wght.ttf) format("truetype")}:root{--eli-font-family: "Google Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;--v-font-family: var(--eli-font-family)}html,body{font-family:var(--eli-font-family)}:where([class^=eli-],[class*=" eli-"]){font-family:var(--eli-font-family);--v-font-family: var(--eli-font-family)}button,input,select,textarea{font-family:inherit}[data-v-371c8db4] .v-badge__badge,[data-v-371c8db4] .v-badge__content{border-radius:var(--eli-badge-radius)!important}.eli-cartao[data-v-6c492bd9]{border-radius:12px}.eli-cartao__titulo[data-v-6c492bd9]{display:flex;align-items:center;justify-content:space-between;gap:12px}.eli-cartao__titulo-texto[data-v-6c492bd9]{min-width:0}.eli-cartao__conteudo[data-v-6c492bd9]{padding-top:8px}.eli-cartao__acoes[data-v-6c492bd9]{padding-top:0}.eli-cartao--cancelado[data-v-6c492bd9]{opacity:.85}.eli-tabela__busca[data-v-341415d1]{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.eli-tabela__busca-input-wrapper[data-v-341415d1]{display:inline-flex;align-items:stretch;border-radius:var(--eli-tabela-cabecalho-controle-radius, 8px);border:1px solid rgba(15,23,42,.15);overflow:hidden;background:#fff;height:var(--eli-tabela-cabecalho-controle-altura, 34px)}.eli-tabela__busca-input[data-v-341415d1]{height:100%;padding:0 12px;border:none;outline:none;font-size:.875rem;color:#0f172ad9}.eli-tabela__busca-input[data-v-341415d1]::-webkit-search-cancel-button,.eli-tabela__busca-input[data-v-341415d1]::-webkit-search-decoration{-webkit-appearance:none}.eli-tabela__busca-input[data-v-341415d1]::placeholder{color:#6b7280d9}.eli-tabela__busca-botao[data-v-341415d1]{display:inline-flex;align-items:center;justify-content:center;border:none;background:#2563eb1f;color:#2563ebf2;height:100%;padding:0 12px;cursor:pointer;transition:background-color .2s ease,color .2s ease}.eli-tabela__busca-botao-icone[data-v-341415d1]{display:block}.eli-tabela__busca-botao[data-v-341415d1]:hover,.eli-tabela__busca-botao[data-v-341415d1]:focus-visible{background:#2563eb33;color:#2563eb}.eli-tabela__busca-botao[data-v-341415d1]:focus-visible{outline:2px solid rgba(37,99,235,.35);outline-offset:2px}.eli-tabela__busca-grupo[data-v-17166105]{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.eli-tabela__celula-link[data-v-7a629ffa]{all:unset;display:inline;color:#2563eb;cursor:pointer;text-decoration:underline;text-decoration-color:#2563eb8c;text-underline-offset:2px}.eli-tabela__celula-link[data-v-7a629ffa]:hover{color:#1d4ed8;text-decoration-color:#1d4ed8bf}.eli-tabela__celula-link[data-v-7a629ffa]:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px;border-radius:4px}.eli-tabela__texto-truncado[data-v-74854889]{display:inline-block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}.eli-tabela__celula-link[data-v-74854889]{all:unset;display:inline;color:#2563eb;cursor:pointer;text-decoration:underline;text-decoration-color:#2563eb8c;text-underline-offset:2px}.eli-tabela__celula-link[data-v-74854889]:hover{color:#1d4ed8;text-decoration-color:#1d4ed8bf}.eli-tabela__celula-link[data-v-74854889]:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px;border-radius:4px}.eli-tabela__celula-link[data-v-e7bac7ff]{all:unset;display:inline;color:#2563eb;cursor:pointer;text-decoration:underline;text-decoration-color:#2563eb8c;text-underline-offset:2px}.eli-tabela__celula-link[data-v-e7bac7ff]:hover{color:#1d4ed8;text-decoration-color:#1d4ed8bf}.eli-tabela__celula-link[data-v-e7bac7ff]:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px;border-radius:4px}.eli-tabela__paginacao[data-v-5ca7a362]{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px;flex-wrap:wrap}.eli-tabela__pagina-botao[data-v-5ca7a362]{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 14px;border-radius:9999px;border:1px solid rgba(15,23,42,.12);background:#fff;font-size:.875rem;font-weight:500;color:#0f172ad1;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.eli-tabela__pagina-botao[data-v-5ca7a362]:hover,.eli-tabela__pagina-botao[data-v-5ca7a362]:focus-visible{background-color:#2563eb14;border-color:#2563eb66;color:#2563ebf2}.eli-tabela__pagina-botao[data-v-5ca7a362]:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}.eli-tabela__pagina-botao[data-v-5ca7a362]:disabled{cursor:default;opacity:.5;background:#94a3b814;border-color:#94a3b82e;color:#475569bf}.eli-tabela__pagina-botao--ativo[data-v-5ca7a362]{background:#2563eb1f;border-color:#2563eb66;color:#2563ebf2}.eli-tabela__pagina-ellipsis[data-v-5ca7a362]{display:inline-flex;align-items:center;justify-content:center;width:32px;color:#6b7280d9;font-size:.9rem}.eli-tabela-modal-colunas__overlay[data-v-b8f693ef]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;z-index:4000;display:flex;align-items:center;justify-content:center;padding:16px}.eli-tabela-modal-colunas__modal[data-v-b8f693ef]{width:min(860px,100%);background:#fff;border-radius:14px;border:1px solid rgba(15,23,42,.1);box-shadow:0 18px 60px #0f172a40;overflow:hidden}.eli-tabela-modal-colunas__header[data-v-b8f693ef]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(15,23,42,.08)}.eli-tabela-modal-colunas__titulo[data-v-b8f693ef]{font-size:1rem;margin:0}.eli-tabela-modal-colunas__fechar[data-v-b8f693ef]{width:34px;height:34px;border-radius:10px;border:none;background:transparent;cursor:pointer;font-size:22px;line-height:1;color:#0f172acc}.eli-tabela-modal-colunas__fechar[data-v-b8f693ef]:hover,.eli-tabela-modal-colunas__fechar[data-v-b8f693ef]:focus-visible{background:#0f172a0f}.eli-tabela-modal-colunas__conteudo[data-v-b8f693ef]{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}.eli-tabela-modal-colunas__coluna-titulo[data-v-b8f693ef]{font-weight:600;margin-bottom:8px}.eli-tabela-modal-colunas__lista[data-v-b8f693ef]{min-height:260px;border:1px solid rgba(15,23,42,.12);border-radius:12px;padding:10px;background:#0f172a03}.eli-tabela-modal-colunas__item[data-v-b8f693ef]{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;border:1px solid rgba(15,23,42,.08);background:#fff;cursor:grab;-webkit-user-select:none;user-select:none}.eli-tabela-modal-colunas__item+.eli-tabela-modal-colunas__item[data-v-b8f693ef]{margin-top:8px}.eli-tabela-modal-colunas__item[data-v-b8f693ef]:active{cursor:grabbing}.eli-tabela-modal-colunas__item-handle[data-v-b8f693ef]{color:#0f172a8c;font-size:14px}.eli-tabela-modal-colunas__item-texto[data-v-b8f693ef]{flex:1;min-width:0}.eli-tabela-modal-colunas__footer[data-v-b8f693ef]{display:flex;justify-content:flex-end;gap:8px;padding:14px 16px;border-top:1px solid rgba(15,23,42,.08)}.eli-tabela-modal-colunas__botao[data-v-b8f693ef]{height:34px;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.12);background:#fff;cursor:pointer;font-size:.9rem}.eli-tabela-modal-colunas__botao--sec[data-v-b8f693ef]:hover,.eli-tabela-modal-colunas__botao--sec[data-v-b8f693ef]:focus-visible{background:#0f172a0f}.eli-tabela-modal-colunas__botao--prim[data-v-b8f693ef]{border:none;background:#2563ebf2;color:#fff}.eli-tabela-modal-colunas__botao--prim[data-v-b8f693ef]:hover,.eli-tabela-modal-colunas__botao--prim[data-v-b8f693ef]:focus-visible{background:#2563eb}@media(max-width:720px){.eli-tabela-modal-colunas__conteudo[data-v-b8f693ef]{grid-template-columns:1fr}}.eli-entrada__prefixo[data-v-77cbf216],.eli-entrada__sufixo[data-v-77cbf216]{opacity:.75;font-size:.9em;white-space:nowrap}.eli-entrada__prefixo[data-v-77cbf216]{margin-right:6px}.eli-entrada__sufixo[data-v-77cbf216]{margin-left:6px}.eli-data-hora[data-v-1bfd1be8]{width:100%}.eli-tabela-modal-filtro__overlay[data-v-ae32fe4c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;z-index:4000;display:flex;align-items:center;justify-content:center;padding:16px}.eli-tabela-modal-filtro__modal[data-v-ae32fe4c]{width:min(980px,100%);background:#fff;border-radius:14px;border:1px solid rgba(15,23,42,.1);box-shadow:0 18px 60px #0f172a40;overflow:hidden}.eli-tabela-modal-filtro__header[data-v-ae32fe4c]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(15,23,42,.08)}.eli-tabela-modal-filtro__titulo[data-v-ae32fe4c]{font-size:1rem;margin:0}.eli-tabela-modal-filtro__fechar[data-v-ae32fe4c]{width:34px;height:34px;border-radius:10px;border:none;background:transparent;cursor:pointer;font-size:22px;line-height:1;color:#0f172acc}.eli-tabela-modal-filtro__fechar[data-v-ae32fe4c]:hover,.eli-tabela-modal-filtro__fechar[data-v-ae32fe4c]:focus-visible{background:#0f172a0f}.eli-tabela-modal-filtro__conteudo[data-v-ae32fe4c]{padding:16px}.eli-tabela-modal-filtro__vazio[data-v-ae32fe4c]{opacity:.75;font-size:.9rem}.eli-tabela-modal-filtro__lista[data-v-ae32fe4c]{display:grid;gap:10px}.eli-tabela-modal-filtro__linha[data-v-ae32fe4c]{display:grid;grid-template-columns:1fr 34px;gap:10px;align-items:center}.eli-tabela-modal-filtro__select[data-v-ae32fe4c]{height:34px;border-radius:10px;border:1px solid rgba(15,23,42,.12);padding:0 10px;background:#fff}.eli-tabela-modal-filtro__entrada[data-v-ae32fe4c]{min-width:0}.eli-tabela-modal-filtro__remover[data-v-ae32fe4c]{width:34px;height:34px;border-radius:10px;border:1px solid rgba(15,23,42,.12);background:#fff;cursor:pointer;font-size:18px;line-height:1;color:#0f172acc}.eli-tabela-modal-filtro__remover[data-v-ae32fe4c]:hover,.eli-tabela-modal-filtro__remover[data-v-ae32fe4c]:focus-visible{background:#0f172a0f}.eli-tabela-modal-filtro__acoes[data-v-ae32fe4c]{margin-top:12px}.eli-tabela-modal-filtro__footer[data-v-ae32fe4c]{display:flex;justify-content:flex-end;gap:8px;padding:14px 16px;border-top:1px solid rgba(15,23,42,.08)}.eli-tabela-modal-filtro__botao[data-v-ae32fe4c]{height:34px;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.12);background:#fff;cursor:pointer;font-size:.9rem}.eli-tabela-modal-filtro__botao[data-v-ae32fe4c]:disabled{opacity:.55;cursor:not-allowed}.eli-tabela-modal-filtro__botao--sec[data-v-ae32fe4c]:hover,.eli-tabela-modal-filtro__botao--sec[data-v-ae32fe4c]:focus-visible{background:#0f172a0f}.eli-tabela-modal-filtro__botao--prim[data-v-ae32fe4c]{border:none;background:#2563ebf2;color:#fff}.eli-tabela-modal-filtro__botao--prim[data-v-ae32fe4c]:hover,.eli-tabela-modal-filtro__botao--prim[data-v-ae32fe4c]:focus-visible{background:#2563eb}@media(max-width:880px){.eli-tabela-modal-filtro__linha[data-v-ae32fe4c]{grid-template-columns:1fr}}.eli-tabela{width:100%}.eli-tabela__table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid rgba(0,0,0,.12);border-radius:12px;overflow:visible}.eli-tabela__tbody{overflow:visible}.eli-tabela__tbody .eli-tabela__tr--zebra .eli-tabela__td{background:#0f172a05}.eli-tabela__th,.eli-tabela__td{padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.08);vertical-align:top}.eli-tabela__th{text-align:left;font-weight:600;background:#00000008}.eli-tabela__th--ordenavel{padding:0}.eli-tabela__th--ordenavel .eli-tabela__th-botao{padding:10px 12px}.eli-tabela__th-botao{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;background:transparent;border:none;font:inherit;color:inherit;cursor:pointer;text-align:left;transition:color .2s ease}.eli-tabela__th-botao:hover,.eli-tabela__th-botao:focus-visible{color:#0f172ad9}.eli-tabela__th-botao:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}.eli-tabela__th-botao--ativo{color:#2563ebf2}.eli-tabela__th-texto{flex:1;min-width:0;white-space:nowrap}.eli-tabela__th-icone{flex-shrink:0}.eli-tabela__th-icone--oculto{opacity:0}.eli-tabela__tr:last-child .eli-tabela__td{border-bottom:none}.eli-tabela__td--clicavel{cursor:pointer}.eli-tabela__td--clicavel:hover{background:#00000008}.eli-tabela--erro{border:1px solid rgba(220,53,69,.35);border-radius:12px;padding:12px}.eli-tabela--carregando{border:1px dashed rgba(0,0,0,.25);border-radius:12px;padding:12px;opacity:.8}.eli-tabela__erro-titulo{font-weight:700;margin-bottom:4px}.eli-tabela__erro-mensagem{opacity:.9}.eli-tabela--vazio{border:1px dashed rgba(0,0,0,.25);border-radius:12px;padding:12px;opacity:.8}.eli-tabela__th--acoes{text-align:right;white-space:nowrap}.eli-tabela__td--acoes{white-space:nowrap;overflow:visible}.eli-tabela__acoes-container{display:flex;justify-content:flex-end;position:relative;z-index:1}.eli-tabela__acoes-container--aberto{z-index:200}.eli-tabela__cabecalho{width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-bottom:12px;flex-wrap:wrap;--eli-tabela-cabecalho-controle-altura: 34px;--eli-tabela-cabecalho-controle-radius: 8px}.eli-tabela__acoes-cabecalho{display:inline-flex;gap:8px;flex-wrap:wrap}.eli-tabela__acoes-cabecalho-botao{display:inline-flex;align-items:center;gap:6px;height:var(--eli-tabela-cabecalho-controle-altura);padding:0 14px;border-radius:var(--eli-tabela-cabecalho-controle-radius);border:none;background:#2563eb1f;color:#2563ebf2;font-size:.875rem;font-weight:500;line-height:1;cursor:pointer;transition:background-color .2s ease,color .2s ease}.eli-tabela__acoes-cabecalho-botao:hover,.eli-tabela__acoes-cabecalho-botao:focus-visible{background:#2563eb33}.eli-tabela__acoes-cabecalho-botao:focus-visible{outline:2px solid rgba(37,99,235,.35);outline-offset:2px}.eli-tabela__acoes-cabecalho-icone{display:inline-block}.eli-tabela__acoes-cabecalho-rotulo{line-height:1}.eli-tabela__acoes-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9999px;border:none;background:transparent;color:#0f172ab8;cursor:pointer;transition:background-color .2s ease,color .2s ease}.eli-tabela__acoes-toggle-icone{display:block}.eli-tabela__acoes-toggle:hover,.eli-tabela__acoes-toggle:focus-visible{background-color:#0f172a14;color:#0f172af2}.eli-tabela__acoes-toggle:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}.eli-tabela__acoes-toggle:disabled{cursor:default;color:#94a3b8cc;background:transparent}.eli-tabela__acoes-menu{min-width:180px;padding:6px 0;margin:0;list-style:none;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:10px;box-shadow:0 12px 30px #0f172a2e;z-index:1000}.eli-tabela__acoes-item{margin:0}.eli-tabela__acoes-item-botao{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:transparent;font-size:.9rem;cursor:pointer;transition:background-color .2s ease}.eli-tabela__acoes-item-botao:hover,.eli-tabela__acoes-item-botao:focus-visible{background-color:#0f172a0f}.eli-tabela__acoes-item-botao:focus-visible{outline:2px solid currentColor;outline-offset:-2px}.eli-tabela__acoes-item-icone{flex-shrink:0}.eli-tabela__acoes-item-texto{flex:1;text-align:left}.eli-tabela__th--expander,.eli-tabela__td--expander{width:42px;padding:6px 8px;text-align:center;vertical-align:middle}.eli-tabela__expander-botao{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9999px;border:none;background:transparent;color:#0f172ab8;cursor:pointer;transition:background-color .2s ease,color .2s ease}.eli-tabela__expander-botao:hover,.eli-tabela__expander-botao:focus-visible{background-color:#0f172a14;color:#0f172af2}.eli-tabela__expander-botao:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}.eli-tabela__expander-botao--ativo{background-color:#0f172a0f;color:#0f172af2}.eli-tabela__td--detalhes{padding:12px}.eli-tabela__tr--detalhes .eli-tabela__td{border-bottom:1px solid rgba(0,0,0,.08)}.eli-tabela__detalhes{display:grid;gap:10px;padding-left:4px}.eli-tabela__detalhe{display:grid;grid-template-columns:180px 1fr;gap:10px;align-items:start}.eli-tabela__detalhe-rotulo{font-weight:600;color:#0f172ad9}.eli-tabela__detalhe-valor{min-width:0}@media(max-width:720px){.eli-tabela__detalhe{grid-template-columns:1fr}} +@font-face{font-family:Google Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(https://paiol.idz.one/estaticos/GoogleSans/GoogleSans-VariableFont_GRAD,opsz,wght.ttf) format("truetype")}@font-face{font-family:Google Sans;font-style:italic;font-weight:100 900;font-display:swap;src:url(https://paiol.idz.one/estaticos/GoogleSans/GoogleSans-Italic-VariableFont_GRAD,opsz,wght.ttf) format("truetype")}:root{--eli-font-family: "Google Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;--v-font-family: var(--eli-font-family)}html,body{font-family:var(--eli-font-family)}:where([class^=eli-],[class*=" eli-"]){font-family:var(--eli-font-family);--v-font-family: var(--eli-font-family)}button,input,select,textarea{font-family:inherit}[data-v-371c8db4] .v-badge__badge,[data-v-371c8db4] .v-badge__content{border-radius:var(--eli-badge-radius)!important}.eli-cartao[data-v-6c492bd9]{border-radius:12px}.eli-cartao__titulo[data-v-6c492bd9]{display:flex;align-items:center;justify-content:space-between;gap:12px}.eli-cartao__titulo-texto[data-v-6c492bd9]{min-width:0}.eli-cartao__conteudo[data-v-6c492bd9]{padding-top:8px}.eli-cartao__acoes[data-v-6c492bd9]{padding-top:0}.eli-cartao--cancelado[data-v-6c492bd9]{opacity:.85}.eli-tabela__busca[data-v-341415d1]{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.eli-tabela__busca-input-wrapper[data-v-341415d1]{display:inline-flex;align-items:stretch;border-radius:var(--eli-tabela-cabecalho-controle-radius, 8px);border:1px solid rgba(15,23,42,.15);overflow:hidden;background:#fff;height:var(--eli-tabela-cabecalho-controle-altura, 34px)}.eli-tabela__busca-input[data-v-341415d1]{height:100%;padding:0 12px;border:none;outline:none;font-size:.875rem;color:#0f172ad9}.eli-tabela__busca-input[data-v-341415d1]::-webkit-search-cancel-button,.eli-tabela__busca-input[data-v-341415d1]::-webkit-search-decoration{-webkit-appearance:none}.eli-tabela__busca-input[data-v-341415d1]::placeholder{color:#6b7280d9}.eli-tabela__busca-botao[data-v-341415d1]{display:inline-flex;align-items:center;justify-content:center;border:none;background:#2563eb1f;color:#2563ebf2;height:100%;padding:0 12px;cursor:pointer;transition:background-color .2s ease,color .2s ease}.eli-tabela__busca-botao-icone[data-v-341415d1]{display:block}.eli-tabela__busca-botao[data-v-341415d1]:hover,.eli-tabela__busca-botao[data-v-341415d1]:focus-visible{background:#2563eb33;color:#2563eb}.eli-tabela__busca-botao[data-v-341415d1]:focus-visible{outline:2px solid rgba(37,99,235,.35);outline-offset:2px}.eli-tabela__busca-grupo[data-v-17166105]{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.eli-tabela__celula-link[data-v-7a629ffa]{all:unset;display:inline;color:#2563eb;cursor:pointer;text-decoration:underline;text-decoration-color:#2563eb8c;text-underline-offset:2px}.eli-tabela__celula-link[data-v-7a629ffa]:hover{color:#1d4ed8;text-decoration-color:#1d4ed8bf}.eli-tabela__celula-link[data-v-7a629ffa]:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px;border-radius:4px}.eli-tabela__texto-truncado[data-v-74854889]{display:inline-block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}.eli-tabela__celula-link[data-v-74854889]{all:unset;display:inline;color:#2563eb;cursor:pointer;text-decoration:underline;text-decoration-color:#2563eb8c;text-underline-offset:2px}.eli-tabela__celula-link[data-v-74854889]:hover{color:#1d4ed8;text-decoration-color:#1d4ed8bf}.eli-tabela__celula-link[data-v-74854889]:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px;border-radius:4px}.eli-tabela__celula-link[data-v-69c890c4]{all:unset;display:inline;color:#2563eb;cursor:pointer;text-decoration:underline;text-decoration-color:#2563eb8c;text-underline-offset:2px}.eli-tabela__celula-link[data-v-69c890c4]:hover{color:#1d4ed8;text-decoration-color:#1d4ed8bf}.eli-tabela__celula-link[data-v-69c890c4]:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px;border-radius:4px}.eli-tabela__celula-tags[data-v-a9c83dbe]{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.eli-tabela__celula-tag[data-v-a9c83dbe]{cursor:default}.eli-tabela__celula-tag-icone[data-v-a9c83dbe]{margin-right:6px}.eli-tabela__celula-link[data-v-2b88bbb2]{all:unset;display:inline;color:#2563eb;cursor:pointer;text-decoration:underline;text-decoration-color:#2563eb8c;text-underline-offset:2px}.eli-tabela__celula-link[data-v-2b88bbb2]:hover{color:#1d4ed8;text-decoration-color:#1d4ed8bf}.eli-tabela__celula-link[data-v-2b88bbb2]:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px;border-radius:4px}.eli-tabela__paginacao[data-v-5ca7a362]{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px;flex-wrap:wrap}.eli-tabela__pagina-botao[data-v-5ca7a362]{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 14px;border-radius:9999px;border:1px solid rgba(15,23,42,.12);background:#fff;font-size:.875rem;font-weight:500;color:#0f172ad1;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.eli-tabela__pagina-botao[data-v-5ca7a362]:hover,.eli-tabela__pagina-botao[data-v-5ca7a362]:focus-visible{background-color:#2563eb14;border-color:#2563eb66;color:#2563ebf2}.eli-tabela__pagina-botao[data-v-5ca7a362]:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}.eli-tabela__pagina-botao[data-v-5ca7a362]:disabled{cursor:default;opacity:.5;background:#94a3b814;border-color:#94a3b82e;color:#475569bf}.eli-tabela__pagina-botao--ativo[data-v-5ca7a362]{background:#2563eb1f;border-color:#2563eb66;color:#2563ebf2}.eli-tabela__pagina-ellipsis[data-v-5ca7a362]{display:inline-flex;align-items:center;justify-content:center;width:32px;color:#6b7280d9;font-size:.9rem}.eli-tabela-modal-colunas__overlay[data-v-b8f693ef]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;z-index:4000;display:flex;align-items:center;justify-content:center;padding:16px}.eli-tabela-modal-colunas__modal[data-v-b8f693ef]{width:min(860px,100%);background:#fff;border-radius:14px;border:1px solid rgba(15,23,42,.1);box-shadow:0 18px 60px #0f172a40;overflow:hidden}.eli-tabela-modal-colunas__header[data-v-b8f693ef]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(15,23,42,.08)}.eli-tabela-modal-colunas__titulo[data-v-b8f693ef]{font-size:1rem;margin:0}.eli-tabela-modal-colunas__fechar[data-v-b8f693ef]{width:34px;height:34px;border-radius:10px;border:none;background:transparent;cursor:pointer;font-size:22px;line-height:1;color:#0f172acc}.eli-tabela-modal-colunas__fechar[data-v-b8f693ef]:hover,.eli-tabela-modal-colunas__fechar[data-v-b8f693ef]:focus-visible{background:#0f172a0f}.eli-tabela-modal-colunas__conteudo[data-v-b8f693ef]{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}.eli-tabela-modal-colunas__coluna-titulo[data-v-b8f693ef]{font-weight:600;margin-bottom:8px}.eli-tabela-modal-colunas__lista[data-v-b8f693ef]{min-height:260px;border:1px solid rgba(15,23,42,.12);border-radius:12px;padding:10px;background:#0f172a03}.eli-tabela-modal-colunas__item[data-v-b8f693ef]{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;border:1px solid rgba(15,23,42,.08);background:#fff;cursor:grab;-webkit-user-select:none;user-select:none}.eli-tabela-modal-colunas__item+.eli-tabela-modal-colunas__item[data-v-b8f693ef]{margin-top:8px}.eli-tabela-modal-colunas__item[data-v-b8f693ef]:active{cursor:grabbing}.eli-tabela-modal-colunas__item-handle[data-v-b8f693ef]{color:#0f172a8c;font-size:14px}.eli-tabela-modal-colunas__item-texto[data-v-b8f693ef]{flex:1;min-width:0}.eli-tabela-modal-colunas__footer[data-v-b8f693ef]{display:flex;justify-content:flex-end;gap:8px;padding:14px 16px;border-top:1px solid rgba(15,23,42,.08)}.eli-tabela-modal-colunas__botao[data-v-b8f693ef]{height:34px;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.12);background:#fff;cursor:pointer;font-size:.9rem}.eli-tabela-modal-colunas__botao--sec[data-v-b8f693ef]:hover,.eli-tabela-modal-colunas__botao--sec[data-v-b8f693ef]:focus-visible{background:#0f172a0f}.eli-tabela-modal-colunas__botao--prim[data-v-b8f693ef]{border:none;background:#2563ebf2;color:#fff}.eli-tabela-modal-colunas__botao--prim[data-v-b8f693ef]:hover,.eli-tabela-modal-colunas__botao--prim[data-v-b8f693ef]:focus-visible{background:#2563eb}@media(max-width:720px){.eli-tabela-modal-colunas__conteudo[data-v-b8f693ef]{grid-template-columns:1fr}}.eli-entrada__prefixo[data-v-77cbf216],.eli-entrada__sufixo[data-v-77cbf216]{opacity:.75;font-size:.9em;white-space:nowrap}.eli-entrada__prefixo[data-v-77cbf216]{margin-right:6px}.eli-entrada__sufixo[data-v-77cbf216]{margin-left:6px}.eli-data-hora[data-v-1bfd1be8]{width:100%}.eli-tabela-modal-filtro__overlay[data-v-ae32fe4c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;z-index:4000;display:flex;align-items:center;justify-content:center;padding:16px}.eli-tabela-modal-filtro__modal[data-v-ae32fe4c]{width:min(980px,100%);background:#fff;border-radius:14px;border:1px solid rgba(15,23,42,.1);box-shadow:0 18px 60px #0f172a40;overflow:hidden}.eli-tabela-modal-filtro__header[data-v-ae32fe4c]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(15,23,42,.08)}.eli-tabela-modal-filtro__titulo[data-v-ae32fe4c]{font-size:1rem;margin:0}.eli-tabela-modal-filtro__fechar[data-v-ae32fe4c]{width:34px;height:34px;border-radius:10px;border:none;background:transparent;cursor:pointer;font-size:22px;line-height:1;color:#0f172acc}.eli-tabela-modal-filtro__fechar[data-v-ae32fe4c]:hover,.eli-tabela-modal-filtro__fechar[data-v-ae32fe4c]:focus-visible{background:#0f172a0f}.eli-tabela-modal-filtro__conteudo[data-v-ae32fe4c]{padding:16px}.eli-tabela-modal-filtro__vazio[data-v-ae32fe4c]{opacity:.75;font-size:.9rem}.eli-tabela-modal-filtro__lista[data-v-ae32fe4c]{display:grid;gap:10px}.eli-tabela-modal-filtro__linha[data-v-ae32fe4c]{display:grid;grid-template-columns:1fr 34px;gap:10px;align-items:center}.eli-tabela-modal-filtro__select[data-v-ae32fe4c]{height:34px;border-radius:10px;border:1px solid rgba(15,23,42,.12);padding:0 10px;background:#fff}.eli-tabela-modal-filtro__entrada[data-v-ae32fe4c]{min-width:0}.eli-tabela-modal-filtro__remover[data-v-ae32fe4c]{width:34px;height:34px;border-radius:10px;border:1px solid rgba(15,23,42,.12);background:#fff;cursor:pointer;font-size:18px;line-height:1;color:#0f172acc}.eli-tabela-modal-filtro__remover[data-v-ae32fe4c]:hover,.eli-tabela-modal-filtro__remover[data-v-ae32fe4c]:focus-visible{background:#0f172a0f}.eli-tabela-modal-filtro__acoes[data-v-ae32fe4c]{margin-top:12px}.eli-tabela-modal-filtro__footer[data-v-ae32fe4c]{display:flex;justify-content:flex-end;gap:8px;padding:14px 16px;border-top:1px solid rgba(15,23,42,.08)}.eli-tabela-modal-filtro__botao[data-v-ae32fe4c]{height:34px;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.12);background:#fff;cursor:pointer;font-size:.9rem}.eli-tabela-modal-filtro__botao[data-v-ae32fe4c]:disabled{opacity:.55;cursor:not-allowed}.eli-tabela-modal-filtro__botao--sec[data-v-ae32fe4c]:hover,.eli-tabela-modal-filtro__botao--sec[data-v-ae32fe4c]:focus-visible{background:#0f172a0f}.eli-tabela-modal-filtro__botao--prim[data-v-ae32fe4c]{border:none;background:#2563ebf2;color:#fff}.eli-tabela-modal-filtro__botao--prim[data-v-ae32fe4c]:hover,.eli-tabela-modal-filtro__botao--prim[data-v-ae32fe4c]:focus-visible{background:#2563eb}@media(max-width:880px){.eli-tabela-modal-filtro__linha[data-v-ae32fe4c]{grid-template-columns:1fr}}.eli-tabela{width:100%}.eli-tabela__table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid rgba(0,0,0,.12);border-radius:12px;overflow:visible}.eli-tabela__tbody{overflow:visible}.eli-tabela__tbody .eli-tabela__tr--zebra .eli-tabela__td{background:#0f172a05}.eli-tabela__th,.eli-tabela__td{padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.08);vertical-align:top}.eli-tabela__th{text-align:left;font-weight:600;background:#00000008}.eli-tabela__th--ordenavel{padding:0}.eli-tabela__th--ordenavel .eli-tabela__th-botao{padding:10px 12px}.eli-tabela__th-botao{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;background:transparent;border:none;font:inherit;color:inherit;cursor:pointer;text-align:left;transition:color .2s ease}.eli-tabela__th-botao:hover,.eli-tabela__th-botao:focus-visible{color:#0f172ad9}.eli-tabela__th-botao:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}.eli-tabela__th-botao--ativo{color:#2563ebf2}.eli-tabela__th-texto{flex:1;min-width:0;white-space:nowrap}.eli-tabela__th-icone{flex-shrink:0}.eli-tabela__th-icone--oculto{opacity:0}.eli-tabela__tr:last-child .eli-tabela__td{border-bottom:none}.eli-tabela__td--clicavel{cursor:pointer}.eli-tabela__td--clicavel:hover{background:#00000008}.eli-tabela--erro{border:1px solid rgba(220,53,69,.35);border-radius:12px;padding:12px}.eli-tabela--carregando{border:1px dashed rgba(0,0,0,.25);border-radius:12px;padding:12px;opacity:.8}.eli-tabela__erro-titulo{font-weight:700;margin-bottom:4px}.eli-tabela__erro-mensagem{opacity:.9}.eli-tabela--vazio{border:1px dashed rgba(0,0,0,.25);border-radius:12px;padding:12px;opacity:.8}.eli-tabela__th--acoes{text-align:right;white-space:nowrap}.eli-tabela__td--acoes{white-space:nowrap;overflow:visible}.eli-tabela__acoes-container{display:flex;justify-content:flex-end;position:relative;z-index:1}.eli-tabela__acoes-container--aberto{z-index:200}.eli-tabela__cabecalho{width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-bottom:12px;flex-wrap:wrap;--eli-tabela-cabecalho-controle-altura: 34px;--eli-tabela-cabecalho-controle-radius: 8px}.eli-tabela__acoes-cabecalho{display:inline-flex;gap:8px;flex-wrap:wrap}.eli-tabela__acoes-cabecalho-botao{display:inline-flex;align-items:center;gap:6px;height:var(--eli-tabela-cabecalho-controle-altura);padding:0 14px;border-radius:var(--eli-tabela-cabecalho-controle-radius);border:none;background:#2563eb1f;color:#2563ebf2;font-size:.875rem;font-weight:500;line-height:1;cursor:pointer;transition:background-color .2s ease,color .2s ease}.eli-tabela__acoes-cabecalho-botao:hover,.eli-tabela__acoes-cabecalho-botao:focus-visible{background:#2563eb33}.eli-tabela__acoes-cabecalho-botao:focus-visible{outline:2px solid rgba(37,99,235,.35);outline-offset:2px}.eli-tabela__acoes-cabecalho-icone{display:inline-block}.eli-tabela__acoes-cabecalho-rotulo{line-height:1}.eli-tabela__acoes-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9999px;border:none;background:transparent;color:#0f172ab8;cursor:pointer;transition:background-color .2s ease,color .2s ease}.eli-tabela__acoes-toggle-icone{display:block}.eli-tabela__acoes-toggle:hover,.eli-tabela__acoes-toggle:focus-visible{background-color:#0f172a14;color:#0f172af2}.eli-tabela__acoes-toggle:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}.eli-tabela__acoes-toggle:disabled{cursor:default;color:#94a3b8cc;background:transparent}.eli-tabela__acoes-menu{min-width:180px;padding:6px 0;margin:0;list-style:none;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:10px;box-shadow:0 12px 30px #0f172a2e;z-index:1000}.eli-tabela__acoes-item{margin:0}.eli-tabela__acoes-item-botao{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:transparent;font-size:.9rem;cursor:pointer;transition:background-color .2s ease}.eli-tabela__acoes-item-botao:hover,.eli-tabela__acoes-item-botao:focus-visible{background-color:#0f172a0f}.eli-tabela__acoes-item-botao:focus-visible{outline:2px solid currentColor;outline-offset:-2px}.eli-tabela__acoes-item-icone{flex-shrink:0}.eli-tabela__acoes-item-texto{flex:1;text-align:left}.eli-tabela__th--expander,.eli-tabela__td--expander{width:42px;padding:6px 8px;text-align:center;vertical-align:middle}.eli-tabela__expander-botao{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9999px;border:none;background:transparent;color:#0f172ab8;cursor:pointer;transition:background-color .2s ease,color .2s ease}.eli-tabela__expander-botao:hover,.eli-tabela__expander-botao:focus-visible{background-color:#0f172a14;color:#0f172af2}.eli-tabela__expander-botao:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}.eli-tabela__expander-botao--ativo{background-color:#0f172a0f;color:#0f172af2}.eli-tabela__td--detalhes{padding:12px}.eli-tabela__tr--detalhes .eli-tabela__td{border-bottom:1px solid rgba(0,0,0,.08)}.eli-tabela__detalhes{display:grid;gap:10px;padding-left:4px}.eli-tabela__detalhe{display:grid;grid-template-columns:180px 1fr;gap:10px;align-items:start}.eli-tabela__detalhe-rotulo{font-weight:600;color:#0f172ad9}.eli-tabela__detalhe-valor{min-width:0}@media(max-width:720px){.eli-tabela__detalhe{grid-template-columns:1fr}} diff --git a/dist/eli-vue.es.js b/dist/eli-vue.es.js index a746bbd..2afd57f 100644 --- a/dist/eli-vue.es.js +++ b/dist/eli-vue.es.js @@ -1,10 +1,14 @@ -import { defineComponent as U, createBlock as x, openBlock as u, mergeProps as Me, withCtx as te, renderSlot as De, computed as k, ref as I, resolveComponent as Z, createVNode as V, createTextVNode as Ne, createElementVNode as b, createCommentVNode as Q, toDisplayString as j, h as Le, watch as $e, createElementBlock as g, withDirectives as ra, withKeys as _a, vModelText as Ca, Fragment as le, renderList as fe, normalizeStyle as je, resolveDynamicComponent as Be, normalizeClass as Se, withModifiers as ue, Teleport as Ea, createSlots as Aa, vModelSelect as Sa, onMounted as ka, onBeforeUnmount as Da } from "vue"; -import { VBtn as Ma } from "vuetify/components/VBtn"; -import { VBadge as Ba } from "vuetify/components/VBadge"; -import { VTextField as ze } from "vuetify/components/VTextField"; -import { VCard as la, VCardTitle as ia, VCardText as sa, VCardActions as ua } from "vuetify/components/VCard"; -import { VContainer as wa } from "vuetify/components/VGrid"; -const Ta = U({ +import { defineComponent as j, createBlock as W, openBlock as u, mergeProps as Ce, withCtx as te, renderSlot as Te, computed as S, ref as F, resolveComponent as Q, createVNode as q, createTextVNode as Ie, createElementVNode as $, createCommentVNode as ee, toDisplayString as L, h as je, watch as he, createElementBlock as y, withDirectives as ia, withKeys as Sa, vModelText as ka, Fragment as re, renderList as fe, normalizeStyle as ze, resolveDynamicComponent as Me, normalizeClass as De, withModifiers as ue, Teleport as Da, createSlots as Ma, onMounted as sa, vModelSelect as Ba, onBeforeUnmount as Ta } from "vue"; +import { VBtn as wa } from "vuetify/components/VBtn"; +import { VBadge as Pa } from "vuetify/components/VBadge"; +import { VTextField as Ue } from "vuetify/components/VTextField"; +import { VCard as ua, VCardTitle as ca, VCardText as da, VCardActions as fa } from "vuetify/components/VCard"; +import { VContainer as Oa } from "vuetify/components/VGrid"; +import { VChip as Fa, VTextarea as Va, VSelect as Ia } from "vuetify/components"; +import { VChip as Na } from "vuetify/components/VChip"; +import { VTextarea as qa } from "vuetify/components/VTextarea"; +import { VSelect as La } from "vuetify/components/VSelect"; +const ja = j({ name: "EliBotao", inheritAttrs: !1, props: { @@ -29,14 +33,14 @@ const Ta = U({ default: !1 } } -}), H = (e, a) => { +}), z = (e, a) => { const o = e.__vccOpts || e; for (const [n, i] of a) o[n] = i; return o; }; -function Pa(e, a, o, n, i, h) { - return u(), x(Ma, Me({ +function za(e, a, o, n, i, f) { + return u(), W(wa, Ce({ color: e.color, variant: e.variant, size: e.size, @@ -44,15 +48,15 @@ function Pa(e, a, o, n, i, h) { loading: e.loading }, e.$attrs, { class: "eli-botao text-none pt-1" }), { default: te(() => [ - De(e.$slots, "default") + Te(e.$slots, "default") ]), _: 3 }, 16, ["color", "variant", "size", "disabled", "loading"]); } -const ca = /* @__PURE__ */ H(Ta, [["render", Pa]]), We = { +const pa = /* @__PURE__ */ z(ja, [["render", za]]), Ze = { suave: "4px", pill: "10px" -}, Oa = U({ +}, Ua = j({ name: "EliBadge", inheritAttrs: !1, props: { @@ -91,14 +95,14 @@ const ca = /* @__PURE__ */ H(Ta, [["render", Pa]]), We = { } }, setup(e) { - const a = k(() => e.radius in We ? We[e.radius] : e.radius), o = k(() => e.dot || e.badge !== void 0 ? e.visible : !1), n = k(() => ({ + const a = S(() => e.radius in Ze ? Ze[e.radius] : e.radius), o = S(() => e.dot || e.badge !== void 0 ? e.visible : !1), n = S(() => ({ "--eli-badge-radius": a.value })); return { showBadge: o, badgeStyle: n }; } }); -function Fa(e, a, o, n, i, h) { - return e.showBadge ? (u(), x(Ba, Me({ +function Ha(e, a, o, n, i, f) { + return e.showBadge ? (u(), W(Pa, Ce({ key: 0, color: e.color }, e.$attrs, { @@ -111,34 +115,34 @@ function Fa(e, a, o, n, i, h) { class: "eli-badge" }), { default: te(() => [ - De(e.$slots, "default", {}, void 0, !0) + Te(e.$slots, "default", {}, void 0, !0) ]), _: 3 - }, 16, ["color", "location", "offset-x", "offset-y", "dot", "content", "style"])) : De(e.$slots, "default", { key: 1 }, void 0, !0); + }, 16, ["color", "location", "offset-x", "offset-y", "dot", "content", "style"])) : Te(e.$slots, "default", { key: 1 }, void 0, !0); } -const Ue = /* @__PURE__ */ H(Oa, [["render", Fa], ["__scopeId", "data-v-371c8db4"]]); -function Ia(e) { +const He = /* @__PURE__ */ z(Ua, [["render", Ha], ["__scopeId", "data-v-371c8db4"]]); +function Ya(e) { return e.replace(/\D+/g, ""); } -function Na(e) { - const a = Ia(e); +function Ra(e) { + const a = Ya(e); return a.length <= 11 ? a.replace(/(\d{3})(\d)/, "$1.$2").replace(/(\d{3})(\d)/, "$1.$2").replace(/(\d{3})(\d{1,2})$/, "$1-$2").slice(0, 14) : a.replace(/^(\d{2})(\d)/, "$1.$2").replace(/^(\d{2})\.(\d{3})(\d)/, "$1.$2.$3").replace(/\.(\d{3})(\d)/, ".$1/$2").replace(/(\d{4})(\d)/, "$1-$2").slice(0, 18); } -function qa(e) { +function Ja(e) { return e.replace(/\D+/g, ""); } -function Va(e) { - const a = qa(e); +function Wa(e) { + const a = Ja(e); return a ? a.length <= 10 ? a.replace(/^(\d{2})(\d)/, "($1) $2").replace(/(\d{4})(\d)/, "$1-$2").slice(0, 14) : a.replace(/^(\d{2})(\d)/, "($1) $2").replace(/(\d{5})(\d)/, "$1-$2").slice(0, 15) : ""; } -function La(e) { +function Za(e) { return e.replace(/\D+/g, ""); } -function ja(e) { - const a = La(e); +function Xa(e) { + const a = Za(e); return a ? a.replace(/^(\d{5})(\d)/, "$1-$2").slice(0, 9) : ""; } -const za = U({ +const Ga = j({ name: "EliEntradaTexto", inheritAttrs: !1, props: { @@ -161,42 +165,42 @@ const za = U({ blur: () => !0 }, setup(e, { attrs: a, emit: o }) { - const n = k(() => { + const n = S(() => { var l; return ((l = e.opcoes) == null ? void 0 : l.formato) ?? "texto"; - }), i = k({ + }), i = S({ get: () => e.value, set: (l) => { o("update:value", l), o("input", l), o("change", l); } - }), h = k(() => n.value === "email" ? "email" : n.value === "url" ? "url" : "text"), t = k(() => { + }), f = S(() => n.value === "email" ? "email" : n.value === "url" ? "url" : "text"), t = S(() => { if (n.value === "telefone") return "tel"; if (n.value === "cpfCnpj" || n.value === "cep") return "numeric"; }); function r(l) { switch (n.value) { case "telefone": - return Va(l); + return Wa(l); case "cpfCnpj": - return Na(l); + return Ra(l); case "cep": - return ja(l); + return Xa(l); default: return l; } } function d(l) { - const p = l.target, y = r(p.value); - p.value = y, i.value = y; + const c = l.target, m = r(c.value); + c.value = m, i.value = m; } - return { attrs: a, emit: o, localValue: i, inputHtmlType: h, inputMode: t, onInput: d }; + return { attrs: a, emit: o, localValue: i, inputHtmlType: f, inputMode: t, onInput: d }; } }); -function Ua(e, a, o, n, i, h) { +function Ka(e, a, o, n, i, f) { var t, r, d, l; - return u(), x(ze, Me({ + return u(), W(Ue, Ce({ modelValue: e.localValue, - "onUpdate:modelValue": a[0] || (a[0] = (p) => e.localValue = p), + "onUpdate:modelValue": a[0] || (a[0] = (c) => e.localValue = c), type: e.inputHtmlType, inputmode: e.inputMode, label: (t = e.opcoes) == null ? void 0 : t.rotulo, @@ -209,15 +213,15 @@ function Ua(e, a, o, n, i, h) { onInput: e.onInput }), null, 16, ["modelValue", "type", "inputmode", "label", "placeholder", "counter", "maxlength", "onInput"]); } -const He = /* @__PURE__ */ H(za, [["render", Ua]]), Ha = U({ +const Ye = /* @__PURE__ */ z(Ga, [["render", Ka]]), Qa = j({ name: "EliOlaMundo", components: { - EliBotao: ca, - EliBadge: Ue, - EliEntradaTexto: He + EliBotao: pa, + EliBadge: He, + EliEntradaTexto: Ye }, setup() { - const e = I(""), a = I(""), o = I(""), n = I(""), i = I(""); + const e = F(""), a = F(""), o = F(""), n = F(""), i = F(""); return { nome: e, email: n, @@ -226,57 +230,57 @@ const He = /* @__PURE__ */ H(za, [["render", Ua]]), Ha = U({ cep: a }; } -}), Ya = { class: "grid-example" }; -function Ra(e, a, o, n, i, h) { - const t = Z("EliBadge"), r = Z("EliEntradaTexto"), d = Z("EliBotao"); - return u(), x(wa, null, { +}), xa = { class: "grid-example" }; +function et(e, a, o, n, i, f) { + const t = Q("EliBadge"), r = Q("EliEntradaTexto"), d = Q("EliBotao"); + return u(), W(Oa, null, { default: te(() => [ - V(la, { + q(ua, { class: "mx-auto", max_width: "400" }, { default: te(() => [ - V(ia, null, { + q(ca, null, { default: te(() => [ - V(t, { + q(t, { badge: "Novo", "offset-x": "-15", location: "right center" }, { default: te(() => [...a[5] || (a[5] = [ - Ne(" Olá Mundo! ", -1) + Ie(" Olá Mundo! ", -1) ])]), _: 1 }) ]), _: 1 }), - V(sa, null, { + q(da, null, { default: te(() => [ - a[6] || (a[6] = Ne(" Este é um componente de exemplo integrado com Vuetify. ", -1)), - b("div", Ya, [ - V(r, { + a[6] || (a[6] = Ie(" Este é um componente de exemplo integrado com Vuetify. ", -1)), + $("div", xa, [ + q(r, { value: e.nome, "onUpdate:value": a[0] || (a[0] = (l) => e.nome = l), opcoes: { rotulo: "Nome", placeholder: "Digite o nome" }, density: "compact" }, null, 8, ["value"]), - V(r, { + q(r, { value: e.telefone, "onUpdate:value": a[1] || (a[1] = (l) => e.telefone = l), opcoes: { rotulo: "Telefone", formato: "telefone" } }, null, 8, ["value"]), - V(r, { + q(r, { value: e.cep, "onUpdate:value": a[2] || (a[2] = (l) => e.cep = l), opcoes: { rotulo: "CEP", placeholder: "00000-000", formato: "cep" } }, null, 8, ["value"]), - V(r, { + q(r, { value: e.documento, "onUpdate:value": a[3] || (a[3] = (l) => e.documento = l), opcoes: { rotulo: "CPF / CNPJ", formato: "cpfCnpj" } }, null, 8, ["value"]), - V(r, { + q(r, { value: e.email, "onUpdate:value": a[4] || (a[4] = (l) => e.email = l), opcoes: { rotulo: "Email", placeholder: "email@exemplo.com", formato: "email" } @@ -285,15 +289,15 @@ function Ra(e, a, o, n, i, h) { ]), _: 1 }), - V(ua, null, { + q(fa, null, { default: te(() => [ - V(d, { + q(d, { color: "primary", variant: "elevated", block: "" }, { default: te(() => [...a[7] || (a[7] = [ - Ne(" Botão Vuetify ", -1) + Ie(" Botão Vuetify ", -1) ])]), _: 1 }) @@ -307,9 +311,9 @@ function Ra(e, a, o, n, i, h) { _: 1 }); } -const Ja = /* @__PURE__ */ H(Ha, [["render", Ra]]), Wa = U({ +const at = /* @__PURE__ */ z(Qa, [["render", et]]), tt = j({ name: "EliCartao", - components: { EliBadge: Ue }, + components: { EliBadge: He }, inheritAttrs: !1, props: { /** Título de fallback caso o slot `titulo` não seja usado. */ @@ -336,7 +340,7 @@ const Ja = /* @__PURE__ */ H(Ha, [["render", Ra]]), Wa = U({ clicar: (e) => !0 }, setup(e, { emit: a }) { - const o = k(() => e.status), n = k(() => { + const o = S(() => e.status), n = S(() => { switch (e.status) { case "novo": return "primary"; @@ -347,40 +351,40 @@ const Ja = /* @__PURE__ */ H(Ha, [["render", Ra]]), Wa = U({ case "cancelado": return "error"; } - }), i = k(() => `eli-cartao--${e.status}`); - function h() { + }), i = S(() => `eli-cartao--${e.status}`); + function f() { a("clicar", e.status); } return { rotuloStatus: o, corStatus: n, classeStatus: i, - onClick: h + onClick: f }; } -}), Za = { class: "eli-cartao__titulo-texto" }, Xa = { class: "eli-cartao__status" }; -function Ga(e, a, o, n, i, h) { - const t = Z("EliBadge"); - return u(), x(la, Me({ +}), ot = { class: "eli-cartao__titulo-texto" }, nt = { class: "eli-cartao__status" }; +function rt(e, a, o, n, i, f) { + const t = Q("EliBadge"); + return u(), W(ua, Ce({ class: ["eli-cartao", e.classeStatus], variant: e.variant }, e.$attrs), { default: te(() => [ - V(ia, { class: "eli-cartao__titulo" }, { + q(ca, { class: "eli-cartao__titulo" }, { default: te(() => [ - b("div", Za, [ - De(e.$slots, "titulo", {}, () => [ - Ne(j(e.titulo), 1) + $("div", ot, [ + Te(e.$slots, "titulo", {}, () => [ + Ie(L(e.titulo), 1) ], !0) ]), - b("div", Xa, [ - V(t, { + $("div", nt, [ + q(t, { badge: e.rotuloStatus, radius: "pill", color: e.corStatus }, { default: te(() => [...a[0] || (a[0] = [ - b("span", null, null, -1) + $("span", null, null, -1) ])]), _: 1 }, 8, ["badge", "color"]) @@ -388,34 +392,34 @@ function Ga(e, a, o, n, i, h) { ]), _: 3 }), - V(sa, { class: "eli-cartao__conteudo" }, { + q(da, { class: "eli-cartao__conteudo" }, { default: te(() => [ - De(e.$slots, "default", {}, void 0, !0) + Te(e.$slots, "default", {}, void 0, !0) ]), _: 3 }), - e.$slots.acoes ? (u(), x(ua, { + e.$slots.acoes ? (u(), W(fa, { key: 0, class: "eli-cartao__acoes" }, { default: te(() => [ - De(e.$slots, "acoes", {}, void 0, !0) + Te(e.$slots, "acoes", {}, void 0, !0) ]), _: 3 - })) : Q("", !0) + })) : ee("", !0) ]), _: 3 }, 16, ["variant", "class"]); } -const Ka = /* @__PURE__ */ H(Wa, [["render", Ga], ["__scopeId", "data-v-6c492bd9"]]); -var da = ((e) => (e[e.sucesso = 200] = "sucesso", e[e.erroConhecido = 400] = "erroConhecido", e[e.erroPermissao = 401] = "erroPermissao", e[e.erroNaoEncontrado = 404] = "erroNaoEncontrado", e[e.erroDesconhecido = 500] = "erroDesconhecido", e[e.tempoEsgotado = 504] = "tempoEsgotado", e))(da || {}); +const lt = /* @__PURE__ */ z(tt, [["render", rt], ["__scopeId", "data-v-6c492bd9"]]); +var va = ((e) => (e[e.sucesso = 200] = "sucesso", e[e.erroConhecido = 400] = "erroConhecido", e[e.erroPermissao = 401] = "erroPermissao", e[e.erroNaoEncontrado = 404] = "erroNaoEncontrado", e[e.erroDesconhecido = 500] = "erroDesconhecido", e[e.tempoEsgotado = 504] = "tempoEsgotado", e))(va || {}); /** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const Qa = (e) => { +const it = (e) => { for (const a in e) if (a.startsWith("aria-") || a === "role" || a === "title") return !0; @@ -427,28 +431,28 @@ const Qa = (e) => { * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const Ze = (e) => e === ""; +const Xe = (e) => e === ""; /** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const xa = (...e) => e.filter((a, o, n) => !!a && a.trim() !== "" && n.indexOf(a) === o).join(" ").trim(); +const st = (...e) => e.filter((a, o, n) => !!a && a.trim() !== "" && n.indexOf(a) === o).join(" ").trim(); /** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const Xe = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(); +const Ge = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(); /** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const et = (e) => e.replace( +const ut = (e) => e.replace( /^([A-Z])|[\s-_]+(\w)/g, (a, o, n) => n ? n.toUpperCase() : o.toLowerCase() ); @@ -458,8 +462,8 @@ const et = (e) => e.replace( * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const at = (e) => { - const a = et(e); +const ct = (e) => { + const a = ut(e); return a.charAt(0).toUpperCase() + a.slice(1); }; /** @@ -468,7 +472,7 @@ const at = (e) => { * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -var Oe = { +var Fe = { xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24, @@ -485,33 +489,33 @@ var Oe = { * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const tt = ({ +const dt = ({ name: e, iconNode: a, absoluteStrokeWidth: o, "absolute-stroke-width": n, strokeWidth: i, - "stroke-width": h, - size: t = Oe.width, - color: r = Oe.stroke, + "stroke-width": f, + size: t = Fe.width, + color: r = Fe.stroke, ...d -}, { slots: l }) => Le( +}, { slots: l }) => je( "svg", { - ...Oe, + ...Fe, ...d, width: t, height: t, stroke: r, - "stroke-width": Ze(o) || Ze(n) || o === !0 || n === !0 ? Number(i || h || Oe["stroke-width"]) * 24 / Number(t) : i || h || Oe["stroke-width"], - class: xa( + "stroke-width": Xe(o) || Xe(n) || o === !0 || n === !0 ? Number(i || f || Fe["stroke-width"]) * 24 / Number(t) : i || f || Fe["stroke-width"], + class: st( "lucide", d.class, - ...e ? [`lucide-${Xe(at(e))}-icon`, `lucide-${Xe(e)}`] : ["lucide-icon"] + ...e ? [`lucide-${Ge(ct(e))}-icon`, `lucide-${Ge(e)}`] : ["lucide-icon"] ), - ...!l.default && !Qa(d) && { "aria-hidden": "true" } + ...!l.default && !it(d) && { "aria-hidden": "true" } }, - [...a.map((p) => Le(...p)), ...l.default ? [l.default()] : []] + [...a.map((c) => je(...c)), ...l.default ? [l.default()] : []] ); /** * @license lucide-vue-next v0.563.0 - ISC @@ -519,8 +523,8 @@ const tt = ({ * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const we = (e, a) => (o, { slots: n, attrs: i }) => Le( - tt, +const we = (e, a) => (o, { slots: n, attrs: i }) => je( + dt, { ...i, ...o, @@ -535,7 +539,7 @@ const we = (e, a) => (o, { slots: n, attrs: i }) => Le( * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const Ge = we("arrow-down", [ +const Ke = we("arrow-down", [ ["path", { d: "M12 5v14", key: "s699le" }], ["path", { d: "m19 12-7 7-7-7", key: "1idqje" }] ]); @@ -545,7 +549,7 @@ const Ge = we("arrow-down", [ * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const Ke = we("arrow-up", [ +const Qe = we("arrow-up", [ ["path", { d: "m5 12 7-7 7 7", key: "hav0vg" }], ["path", { d: "M12 19V5", key: "x0mq9r" }] ]); @@ -555,7 +559,7 @@ const Ke = we("arrow-up", [ * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const Qe = we("chevron-down", [ +const xe = we("chevron-down", [ ["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }] ]); /** @@ -564,7 +568,7 @@ const Qe = we("chevron-down", [ * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const xe = we("chevron-right", [ +const ea = we("chevron-right", [ ["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }] ]); /** @@ -573,7 +577,7 @@ const xe = we("chevron-right", [ * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const ot = we("ellipsis-vertical", [ +const ft = we("ellipsis-vertical", [ ["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }], ["circle", { cx: "12", cy: "5", r: "1", key: "gxeob9" }], ["circle", { cx: "12", cy: "19", r: "1", key: "lyex9k" }] @@ -584,12 +588,12 @@ const ot = we("ellipsis-vertical", [ * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */ -const nt = we("search", [ +const pt = we("search", [ ["path", { d: "m21 21-4.34-4.34", key: "14j7rj" }], ["circle", { cx: "11", cy: "11", r: "8", key: "4ej97u" }] -]), rt = U({ +]), vt = j({ name: "EliTabelaCaixaDeBusca", - components: { Search: nt }, + components: { Search: pt }, props: { modelo: { type: String, @@ -603,8 +607,8 @@ const nt = we("search", [ } }, setup(e, { emit: a }) { - const o = I(e.modelo ?? ""); - $e( + const o = F(e.modelo ?? ""); + he( () => e.modelo, (i) => { i !== void 0 && i !== o.value && (o.value = i); @@ -615,29 +619,29 @@ const nt = we("search", [ } return { texto: o, emitirBusca: n }; } -}), lt = { class: "eli-tabela__busca" }, it = { class: "eli-tabela__busca-input-wrapper" }; -function st(e, a, o, n, i, h) { - const t = Z("Search"); - return u(), g("div", lt, [ - b("div", it, [ - ra(b("input", { +}), mt = { class: "eli-tabela__busca" }, bt = { class: "eli-tabela__busca-input-wrapper" }; +function ht(e, a, o, n, i, f) { + const t = Q("Search"); + return u(), y("div", mt, [ + $("div", bt, [ + ia($("input", { id: "eli-tabela-busca", "onUpdate:modelValue": a[0] || (a[0] = (r) => e.texto = r), type: "search", class: "eli-tabela__busca-input", placeholder: "Digite termos para filtrar", - onKeyup: a[1] || (a[1] = _a((...r) => e.emitirBusca && e.emitirBusca(...r), ["enter"])) + onKeyup: a[1] || (a[1] = Sa((...r) => e.emitirBusca && e.emitirBusca(...r), ["enter"])) }, null, 544), [ - [Ca, e.texto] + [ka, e.texto] ]), - b("button", { + $("button", { type: "button", class: "eli-tabela__busca-botao", "aria-label": "Buscar", title: "Buscar", onClick: a[2] || (a[2] = (...r) => e.emitirBusca && e.emitirBusca(...r)) }, [ - V(t, { + q(t, { class: "eli-tabela__busca-botao-icone", size: 16, "stroke-width": 2, @@ -647,9 +651,9 @@ function st(e, a, o, n, i, h) { ]) ]); } -const ut = /* @__PURE__ */ H(rt, [["render", st], ["__scopeId", "data-v-341415d1"]]), ct = U({ +const gt = /* @__PURE__ */ z(vt, [["render", ht], ["__scopeId", "data-v-341415d1"]]), $t = j({ name: "EliTabelaCabecalho", - components: { EliTabelaCaixaDeBusca: ut }, + components: { EliTabelaCaixaDeBusca: gt }, props: { exibirBusca: { type: Boolean, @@ -686,66 +690,66 @@ const ut = /* @__PURE__ */ H(rt, [["render", st], ["__scopeId", "data-v-341415d1 } }, setup(e, { emit: a }) { - const o = k(() => e.acoesCabecalho.length > 0); + const o = S(() => e.acoesCabecalho.length > 0); function n(t) { a("buscar", t); } function i() { a("colunas"); } - function h() { + function f() { a("filtroAvancado"); } - return { temAcoesCabecalho: o, emitBuscar: n, emitColunas: i, emitFiltroAvancado: h }; + return { temAcoesCabecalho: o, emitBuscar: n, emitColunas: i, emitFiltroAvancado: f }; } -}), dt = { class: "eli-tabela__cabecalho" }, ft = { +}), yt = { class: "eli-tabela__cabecalho" }, _t = { key: 0, class: "eli-tabela__busca-grupo" -}, vt = { +}, Et = { key: 1, class: "eli-tabela__acoes-cabecalho" -}, pt = ["onClick"], mt = { class: "eli-tabela__acoes-cabecalho-rotulo" }; -function bt(e, a, o, n, i, h) { - const t = Z("EliTabelaCaixaDeBusca"); - return u(), g("div", dt, [ - e.exibirBusca ? (u(), g("div", ft, [ - e.exibirBotaoColunas ? (u(), g("button", { +}, Ct = ["onClick"], At = { class: "eli-tabela__acoes-cabecalho-rotulo" }; +function St(e, a, o, n, i, f) { + const t = Q("EliTabelaCaixaDeBusca"); + return u(), y("div", yt, [ + e.exibirBusca ? (u(), y("div", _t, [ + e.exibirBotaoColunas ? (u(), y("button", { key: 0, type: "button", class: "eli-tabela__acoes-cabecalho-botao eli-tabela__acoes-cabecalho-botao--colunas", onClick: a[0] || (a[0] = (...r) => e.emitColunas && e.emitColunas(...r)) - }, " Colunas ")) : Q("", !0), - e.exibirBotaoFiltroAvancado ? (u(), g("button", { + }, " Colunas ")) : ee("", !0), + e.exibirBotaoFiltroAvancado ? (u(), y("button", { key: 1, type: "button", class: "eli-tabela__acoes-cabecalho-botao eli-tabela__acoes-cabecalho-botao--filtro", onClick: a[1] || (a[1] = (...r) => e.emitFiltroAvancado && e.emitFiltroAvancado(...r)) - }, " Filtro ")) : Q("", !0), - V(t, { + }, " Filtro ")) : ee("", !0), + q(t, { modelo: e.valorBusca, onBuscar: e.emitBuscar }, null, 8, ["modelo", "onBuscar"]) - ])) : Q("", !0), - e.temAcoesCabecalho ? (u(), g("div", vt, [ - (u(!0), g(le, null, fe(e.acoesCabecalho, (r, d) => (u(), g("button", { + ])) : ee("", !0), + e.temAcoesCabecalho ? (u(), y("div", Et, [ + (u(!0), y(re, null, fe(e.acoesCabecalho, (r, d) => (u(), y("button", { key: `${r.rotulo}-${d}`, type: "button", class: "eli-tabela__acoes-cabecalho-botao", - style: je(r.cor ? { backgroundColor: r.cor, color: "#fff" } : void 0), + style: ze(r.cor ? { backgroundColor: r.cor, color: "#fff" } : void 0), onClick: r.acao }, [ - r.icone ? (u(), x(Be(r.icone), { + r.icone ? (u(), W(Me(r.icone), { key: 0, class: "eli-tabela__acoes-cabecalho-icone", size: 16, "stroke-width": 2 - })) : Q("", !0), - b("span", mt, j(r.rotulo), 1) - ], 12, pt))), 128)) - ])) : Q("", !0) + })) : ee("", !0), + $("span", At, L(r.rotulo), 1) + ], 12, Ct))), 128)) + ])) : ee("", !0) ]); } -const ht = /* @__PURE__ */ H(ct, [["render", bt], ["__scopeId", "data-v-17166105"]]), gt = U({ +const kt = /* @__PURE__ */ z($t, [["render", St], ["__scopeId", "data-v-17166105"]]), Dt = j({ name: "EliTabelaEstados", props: { carregando: { @@ -762,25 +766,25 @@ const ht = /* @__PURE__ */ H(ct, [["render", bt], ["__scopeId", "data-v-17166105 default: void 0 } } -}), $t = { +}), Mt = { key: 0, class: "eli-tabela eli-tabela--carregando", "aria-busy": "true" -}, yt = { +}, Bt = { key: 1, class: "eli-tabela eli-tabela--erro", role: "alert" -}, _t = { class: "eli-tabela__erro-mensagem" }, Ct = { +}, Tt = { class: "eli-tabela__erro-mensagem" }, wt = { key: 2, class: "eli-tabela eli-tabela--vazio" }; -function Et(e, a, o, n, i, h) { - return e.carregando ? (u(), g("div", $t, " Carregando... ")) : e.erro ? (u(), g("div", yt, [ - a[0] || (a[0] = b("div", { class: "eli-tabela__erro-titulo" }, "Erro", -1)), - b("div", _t, j(e.erro), 1) - ])) : (u(), g("div", Ct, j(e.mensagemVazio ?? "Nenhum registro encontrado."), 1)); +function Pt(e, a, o, n, i, f) { + return e.carregando ? (u(), y("div", Mt, " Carregando... ")) : e.erro ? (u(), y("div", Bt, [ + a[0] || (a[0] = $("div", { class: "eli-tabela__erro-titulo" }, "Erro", -1)), + $("div", Tt, L(e.erro), 1) + ])) : (u(), y("div", wt, L(e.mensagemVazio ?? "Nenhum registro encontrado."), 1)); } -const At = /* @__PURE__ */ H(gt, [["render", Et]]), St = U({ +const Ot = /* @__PURE__ */ z(Dt, [["render", Pt]]), Ft = j({ name: "EliTabelaDebug", props: { isDev: { @@ -796,22 +800,22 @@ const At = /* @__PURE__ */ H(gt, [["render", Et]]), St = U({ required: !0 } } -}), kt = { +}), Vt = { key: 0, style: { position: "fixed", left: "8px", bottom: "8px", "z-index": "999999", background: "rgba(185,28,28,0.9)", color: "#fff", padding: "6px 10px", "border-radius": "8px", "font-size": "12px", "max-width": "500px" } }; -function Dt(e, a, o, n, i, h) { - return e.isDev ? (u(), g("div", kt, [ - a[0] || (a[0] = b("div", null, [ - b("b", null, "EliTabela debug") +function It(e, a, o, n, i, f) { + return e.isDev ? (u(), y("div", Vt, [ + a[0] || (a[0] = $("div", null, [ + $("b", null, "EliTabela debug") ], -1)), - b("div", null, "menuAberto: " + j(e.menuAberto), 1), - b("div", null, "menuPos: top=" + j(e.menuPopupPos.top) + ", left=" + j(e.menuPopupPos.left), 1) - ])) : Q("", !0); + $("div", null, "menuAberto: " + L(e.menuAberto), 1), + $("div", null, "menuPos: top=" + L(e.menuPopupPos.top) + ", left=" + L(e.menuPopupPos.left), 1) + ])) : ee("", !0); } -const Mt = /* @__PURE__ */ H(St, [["render", Dt]]), Bt = U({ +const Nt = /* @__PURE__ */ z(Ft, [["render", It]]), qt = j({ name: "EliTabelaHead", - components: { ArrowUp: Ke, ArrowDown: Ge }, + components: { ArrowUp: Qe, ArrowDown: Ke }, props: { colunas: { type: Array, @@ -847,63 +851,63 @@ const Mt = /* @__PURE__ */ H(St, [["render", Dt]]), Bt = U({ a("alternarOrdenacao", i); } return { - ArrowUp: Ke, - ArrowDown: Ge, + ArrowUp: Qe, + ArrowDown: Ke, isOrdenavel: o, emitAlternarOrdenacao: n }; } -}), wt = { class: "eli-tabela__thead" }, Tt = { class: "eli-tabela__tr eli-tabela__tr--header" }, Pt = { +}), Lt = { class: "eli-tabela__thead" }, jt = { class: "eli-tabela__tr eli-tabela__tr--header" }, zt = { key: 0, class: "eli-tabela__th eli-tabela__th--expander", scope: "col" -}, Ot = ["onClick"], Ft = { class: "eli-tabela__th-texto" }, It = { +}, Ut = ["onClick"], Ht = { class: "eli-tabela__th-texto" }, Yt = { key: 1, class: "eli-tabela__th-label" -}, Nt = { +}, Rt = { key: 1, class: "eli-tabela__th eli-tabela__th--acoes", scope: "col" }; -function qt(e, a, o, n, i, h) { - const t = Z("ArrowUp"); - return u(), g("thead", wt, [ - b("tr", Tt, [ - e.temColunasInvisiveis ? (u(), g("th", Pt)) : Q("", !0), - (u(!0), g(le, null, fe(e.colunas, (r, d) => (u(), g("th", { +function Jt(e, a, o, n, i, f) { + const t = Q("ArrowUp"); + return u(), y("thead", Lt, [ + $("tr", jt, [ + e.temColunasInvisiveis ? (u(), y("th", zt)) : ee("", !0), + (u(!0), y(re, null, fe(e.colunas, (r, d) => (u(), y("th", { key: `th-${d}`, - class: Se(["eli-tabela__th", [e.isOrdenavel(r) ? "eli-tabela__th--ordenavel" : void 0]]), + class: De(["eli-tabela__th", [e.isOrdenavel(r) ? "eli-tabela__th--ordenavel" : void 0]]), scope: "col" }, [ - e.isOrdenavel(r) ? (u(), g("button", { + e.isOrdenavel(r) ? (u(), y("button", { key: 0, type: "button", - class: Se(["eli-tabela__th-botao", [ + class: De(["eli-tabela__th-botao", [ e.colunaOrdenacao === String(r.coluna_ordem) ? "eli-tabela__th-botao--ativo" : void 0 ]]), onClick: (l) => e.emitAlternarOrdenacao(String(r.coluna_ordem)) }, [ - b("span", Ft, j(r.rotulo), 1), - e.colunaOrdenacao === String(r.coluna_ordem) ? (u(), x(Be(e.direcaoOrdenacao === "asc" ? e.ArrowUp : e.ArrowDown), { + $("span", Ht, L(r.rotulo), 1), + e.colunaOrdenacao === String(r.coluna_ordem) ? (u(), W(Me(e.direcaoOrdenacao === "asc" ? e.ArrowUp : e.ArrowDown), { key: 0, class: "eli-tabela__th-icone", size: 16, "stroke-width": 2, "aria-hidden": "true" - })) : (u(), x(t, { + })) : (u(), W(t, { key: 1, class: "eli-tabela__th-icone eli-tabela__th-icone--oculto", size: 16, "stroke-width": 2, "aria-hidden": "true" })) - ], 10, Ot)) : (u(), g("span", It, j(r.rotulo), 1)) + ], 10, Ut)) : (u(), y("span", Yt, L(r.rotulo), 1)) ], 2))), 128)), - e.temAcoes ? (u(), g("th", Nt, " Ações ")) : Q("", !0) + e.temAcoes ? (u(), y("th", Rt, " Ações ")) : ee("", !0) ]) ]); } -const Vt = /* @__PURE__ */ H(Bt, [["render", qt]]), Lt = U({ +const Wt = /* @__PURE__ */ z(qt, [["render", Jt]]), Zt = j({ name: "EliTabelaCelulaTextoSimples", components: {}, props: { @@ -918,17 +922,17 @@ const Vt = /* @__PURE__ */ H(Bt, [["render", qt]]), Lt = U({ setup({ dados: e }) { return { dados: e }; } -}), jt = { key: 1 }; -function zt(e, a, o, n, i, h) { +}), Xt = { key: 1 }; +function Gt(e, a, o, n, i, f) { var t, r, d; - return (t = e.dados) != null && t.acao ? (u(), g("button", { + return (t = e.dados) != null && t.acao ? (u(), y("button", { key: 0, type: "button", class: "eli-tabela__celula-link", onClick: a[0] || (a[0] = ue((l) => e.dados.acao(), ["stop", "prevent"])) - }, j((r = e.dados) == null ? void 0 : r.texto), 1)) : (u(), g("span", jt, j((d = e.dados) == null ? void 0 : d.texto), 1)); + }, L((r = e.dados) == null ? void 0 : r.texto), 1)) : (u(), y("span", Xt, L((d = e.dados) == null ? void 0 : d.texto), 1)); } -const Ut = /* @__PURE__ */ H(Lt, [["render", zt], ["__scopeId", "data-v-7a629ffa"]]), Ht = U({ +const Kt = /* @__PURE__ */ z(Zt, [["render", Gt], ["__scopeId", "data-v-7a629ffa"]]), Qt = j({ name: "EliTabelaCelulaTextoTruncado", props: { dados: { @@ -938,22 +942,22 @@ const Ut = /* @__PURE__ */ H(Lt, [["render", zt], ["__scopeId", "data-v-7a629ffa setup({ dados: e }) { return { dados: e }; } -}), Yt = ["title"], Rt = ["title"]; -function Jt(e, a, o, n, i, h) { - var t, r, d, l, p; - return (t = e.dados) != null && t.acao ? (u(), g("button", { +}), xt = ["title"], eo = ["title"]; +function ao(e, a, o, n, i, f) { + var t, r, d, l, c; + return (t = e.dados) != null && t.acao ? (u(), y("button", { key: 0, type: "button", class: "eli-tabela__texto-truncado eli-tabela__celula-link", title: (r = e.dados) == null ? void 0 : r.texto, - onClick: a[0] || (a[0] = ue((y) => e.dados.acao(), ["stop", "prevent"])) - }, j((d = e.dados) == null ? void 0 : d.texto), 9, Yt)) : (u(), g("span", { + onClick: a[0] || (a[0] = ue((m) => e.dados.acao(), ["stop", "prevent"])) + }, L((d = e.dados) == null ? void 0 : d.texto), 9, xt)) : (u(), y("span", { key: 1, class: "eli-tabela__texto-truncado", title: (l = e.dados) == null ? void 0 : l.texto - }, j((p = e.dados) == null ? void 0 : p.texto), 9, Rt)); + }, L((c = e.dados) == null ? void 0 : c.texto), 9, eo)); } -const Wt = /* @__PURE__ */ H(Ht, [["render", Jt], ["__scopeId", "data-v-74854889"]]), Zt = U({ +const to = /* @__PURE__ */ z(Qt, [["render", ao], ["__scopeId", "data-v-74854889"]]), oo = j({ name: "EliTabelaCelulaNumero", components: {}, props: { @@ -961,28 +965,429 @@ const Wt = /* @__PURE__ */ H(Ht, [["render", Jt], ["__scopeId", "data-v-74854889 type: Object } }, - data() { - return {}; - }, - methods: {}, setup({ dados: e }) { - return { dados: e }; + const a = S(() => { + var r, d; + const o = String(e == null ? void 0 : e.numero).replace(".", ","), n = (r = e == null ? void 0 : e.prefixo) == null ? void 0 : r.trim(), i = (d = e == null ? void 0 : e.sufixo) == null ? void 0 : d.trim(), f = n ? `${n} ` : "", t = i ? ` ${i}` : ""; + return `${f}${o}${t}`; + }); + return { dados: e, textoNumero: a }; } -}), Xt = { key: 1 }; -function Gt(e, a, o, n, i, h) { - var t, r, d; - return (t = e.dados) != null && t.acao ? (u(), g("button", { +}), no = { key: 1 }; +function ro(e, a, o, n, i, f) { + var t; + return (t = e.dados) != null && t.acao ? (u(), y("button", { key: 0, type: "button", class: "eli-tabela__celula-link", - onClick: a[0] || (a[0] = ue((l) => e.dados.acao(), ["stop", "prevent"])) - }, j(String((r = e.dados) == null ? void 0 : r.numero).replace(".", ",")), 1)) : (u(), g("span", Xt, j(String((d = e.dados) == null ? void 0 : d.numero).replace(".", ",")), 1)); + onClick: a[0] || (a[0] = ue((r) => e.dados.acao(), ["stop", "prevent"])) + }, L(e.textoNumero), 1)) : (u(), y("span", no, L(e.textoNumero), 1)); } -const Kt = /* @__PURE__ */ H(Zt, [["render", Gt], ["__scopeId", "data-v-e7bac7ff"]]), Qt = { - textoSimples: Ut, - textoTruncado: Wt, - numero: Kt -}, xt = U({ +const lo = /* @__PURE__ */ z(oo, [["render", ro], ["__scopeId", "data-v-69c890c4"]]), io = j({ + name: "EliTabelaCelulaTags", + components: { VChip: Fa }, + props: { + dados: { + type: Object, + required: !1 + } + }, + setup({ dados: e }) { + return { dados: e }; + } +}), so = { class: "eli-tabela__celula-tags" }; +function uo(e, a, o, n, i, f) { + var t; + return u(), y("div", so, [ + (u(!0), y(re, null, fe(((t = e.dados) == null ? void 0 : t.opcoes) ?? [], (r, d) => (u(), W(Na, { + key: d, + class: "eli-tabela__celula-tag", + size: "small", + variant: "tonal", + color: r.cor, + clickable: !!r.acao, + onClick: ue((l) => { + var c; + return (c = r.acao) == null ? void 0 : c.call(r); + }, ["stop", "prevent"]) + }, { + default: te(() => [ + r.icone ? (u(), W(Me(r.icone), { + key: 0, + class: "eli-tabela__celula-tag-icone", + size: 14 + })) : ee("", !0), + $("span", null, L(r.rotulo), 1) + ]), + _: 2 + }, 1032, ["color", "clickable", "onClick"]))), 128)) + ]); +} +const co = /* @__PURE__ */ z(io, [["render", uo], ["__scopeId", "data-v-a9c83dbe"]]); +function ma(e) { + return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e; +} +var Ne = { exports: {} }, fo = Ne.exports, aa; +function po() { + return aa || (aa = 1, (function(e, a) { + (function(o, n) { + e.exports = n(); + })(fo, (function() { + var o = 1e3, n = 6e4, i = 36e5, f = "millisecond", t = "second", r = "minute", d = "hour", l = "day", c = "week", m = "month", w = "quarter", B = "year", _ = "date", s = "Invalid Date", E = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/, g = /\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g, C = { name: "en", weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), ordinal: function(D) { + var h = ["th", "st", "nd", "rd"], p = D % 100; + return "[" + D + (h[(p - 20) % 10] || h[p] || h[0]) + "]"; + } }, Z = function(D, h, p) { + var A = String(D); + return !A || A.length >= h ? D : "" + Array(h + 1 - A.length).join(p) + D; + }, le = { s: Z, z: function(D) { + var h = -D.utcOffset(), p = Math.abs(h), A = Math.floor(p / 60), v = p % 60; + return (h <= 0 ? "+" : "-") + Z(A, 2, "0") + ":" + Z(v, 2, "0"); + }, m: function D(h, p) { + if (h.date() < p.date()) return -D(p, h); + var A = 12 * (p.year() - h.year()) + (p.month() - h.month()), v = h.clone().add(A, m), T = p - v < 0, M = h.clone().add(A + (T ? -1 : 1), m); + return +(-(A + (p - v) / (T ? v - M : M - v)) || 0); + }, a: function(D) { + return D < 0 ? Math.ceil(D) || 0 : Math.floor(D); + }, p: function(D) { + return { M: m, y: B, w: c, d: l, D: _, h: d, m: r, s: t, ms: f, Q: w }[D] || String(D || "").toLowerCase().replace(/s$/, ""); + }, u: function(D) { + return D === void 0; + } }, Y = "en", X = {}; + X[Y] = C; + var ie = "$isDayjsObject", U = function(D) { + return D instanceof Ae || !(!D || !D[ie]); + }, me = function D(h, p, A) { + var v; + if (!h) return Y; + if (typeof h == "string") { + var T = h.toLowerCase(); + X[T] && (v = T), p && (X[T] = p, v = T); + var M = h.split("-"); + if (!v && M.length > 1) return D(M[0]); + } else { + var N = h.name; + X[N] = h, v = N; + } + return !A && v && (Y = v), v || !A && Y; + }, I = function(D, h) { + if (U(D)) return D.clone(); + var p = typeof h == "object" ? h : {}; + return p.date = D, p.args = arguments, new Ae(p); + }, O = le; + O.l = me, O.i = U, O.w = function(D, h) { + return I(D, { locale: h.$L, utc: h.$u, x: h.$x, $offset: h.$offset }); + }; + var Ae = (function() { + function D(p) { + this.$L = me(p.locale, null, !0), this.parse(p), this.$x = this.$x || p.x || {}, this[ie] = !0; + } + var h = D.prototype; + return h.parse = function(p) { + this.$d = (function(A) { + var v = A.date, T = A.utc; + if (v === null) return /* @__PURE__ */ new Date(NaN); + if (O.u(v)) return /* @__PURE__ */ new Date(); + if (v instanceof Date) return new Date(v); + if (typeof v == "string" && !/Z$/i.test(v)) { + var M = v.match(E); + if (M) { + var N = M[2] - 1 || 0, R = (M[7] || "0").substring(0, 3); + return T ? new Date(Date.UTC(M[1], N, M[3] || 1, M[4] || 0, M[5] || 0, M[6] || 0, R)) : new Date(M[1], N, M[3] || 1, M[4] || 0, M[5] || 0, M[6] || 0, R); + } + } + return new Date(v); + })(p), this.init(); + }, h.init = function() { + var p = this.$d; + this.$y = p.getFullYear(), this.$M = p.getMonth(), this.$D = p.getDate(), this.$W = p.getDay(), this.$H = p.getHours(), this.$m = p.getMinutes(), this.$s = p.getSeconds(), this.$ms = p.getMilliseconds(); + }, h.$utils = function() { + return O; + }, h.isValid = function() { + return this.$d.toString() !== s; + }, h.isSame = function(p, A) { + var v = I(p); + return this.startOf(A) <= v && v <= this.endOf(A); + }, h.isAfter = function(p, A) { + return I(p) < this.startOf(A); + }, h.isBefore = function(p, A) { + return this.endOf(A) < I(p); + }, h.$g = function(p, A, v) { + return O.u(p) ? this[A] : this.set(v, p); + }, h.unix = function() { + return Math.floor(this.valueOf() / 1e3); + }, h.valueOf = function() { + return this.$d.getTime(); + }, h.startOf = function(p, A) { + var v = this, T = !!O.u(A) || A, M = O.p(p), N = function(ye, K) { + var pe = O.w(v.$u ? Date.UTC(v.$y, K, ye) : new Date(v.$y, K, ye), v); + return T ? pe : pe.endOf(l); + }, R = function(ye, K) { + return O.w(v.toDate()[ye].apply(v.toDate("s"), (T ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(K)), v); + }, G = this.$W, x = this.$M, oe = this.$D, ge = "set" + (this.$u ? "UTC" : ""); + switch (M) { + case B: + return T ? N(1, 0) : N(31, 11); + case m: + return T ? N(1, x) : N(0, x + 1); + case c: + var $e = this.$locale().weekStart || 0, Se = (G < $e ? G + 7 : G) - $e; + return N(T ? oe - Se : oe + (6 - Se), x); + case l: + case _: + return R(ge + "Hours", 0); + case d: + return R(ge + "Minutes", 1); + case r: + return R(ge + "Seconds", 2); + case t: + return R(ge + "Milliseconds", 3); + default: + return this.clone(); + } + }, h.endOf = function(p) { + return this.startOf(p, !1); + }, h.$set = function(p, A) { + var v, T = O.p(p), M = "set" + (this.$u ? "UTC" : ""), N = (v = {}, v[l] = M + "Date", v[_] = M + "Date", v[m] = M + "Month", v[B] = M + "FullYear", v[d] = M + "Hours", v[r] = M + "Minutes", v[t] = M + "Seconds", v[f] = M + "Milliseconds", v)[T], R = T === l ? this.$D + (A - this.$W) : A; + if (T === m || T === B) { + var G = this.clone().set(_, 1); + G.$d[N](R), G.init(), this.$d = G.set(_, Math.min(this.$D, G.daysInMonth())).$d; + } else N && this.$d[N](R); + return this.init(), this; + }, h.set = function(p, A) { + return this.clone().$set(p, A); + }, h.get = function(p) { + return this[O.p(p)](); + }, h.add = function(p, A) { + var v, T = this; + p = Number(p); + var M = O.p(A), N = function(x) { + var oe = I(T); + return O.w(oe.date(oe.date() + Math.round(x * p)), T); + }; + if (M === m) return this.set(m, this.$M + p); + if (M === B) return this.set(B, this.$y + p); + if (M === l) return N(1); + if (M === c) return N(7); + var R = (v = {}, v[r] = n, v[d] = i, v[t] = o, v)[M] || 1, G = this.$d.getTime() + p * R; + return O.w(G, this); + }, h.subtract = function(p, A) { + return this.add(-1 * p, A); + }, h.format = function(p) { + var A = this, v = this.$locale(); + if (!this.isValid()) return v.invalidDate || s; + var T = p || "YYYY-MM-DDTHH:mm:ssZ", M = O.z(this), N = this.$H, R = this.$m, G = this.$M, x = v.weekdays, oe = v.months, ge = v.meridiem, $e = function(K, pe, _e, Be) { + return K && (K[pe] || K(A, T)) || _e[pe].slice(0, Be); + }, Se = function(K) { + return O.s(N % 12 || 12, K, "0"); + }, ye = ge || function(K, pe, _e) { + var Be = K < 12 ? "AM" : "PM"; + return _e ? Be.toLowerCase() : Be; + }; + return T.replace(g, (function(K, pe) { + return pe || (function(_e) { + switch (_e) { + case "YY": + return String(A.$y).slice(-2); + case "YYYY": + return O.s(A.$y, 4, "0"); + case "M": + return G + 1; + case "MM": + return O.s(G + 1, 2, "0"); + case "MMM": + return $e(v.monthsShort, G, oe, 3); + case "MMMM": + return $e(oe, G); + case "D": + return A.$D; + case "DD": + return O.s(A.$D, 2, "0"); + case "d": + return String(A.$W); + case "dd": + return $e(v.weekdaysMin, A.$W, x, 2); + case "ddd": + return $e(v.weekdaysShort, A.$W, x, 3); + case "dddd": + return x[A.$W]; + case "H": + return String(N); + case "HH": + return O.s(N, 2, "0"); + case "h": + return Se(1); + case "hh": + return Se(2); + case "a": + return ye(N, R, !0); + case "A": + return ye(N, R, !1); + case "m": + return String(R); + case "mm": + return O.s(R, 2, "0"); + case "s": + return String(A.$s); + case "ss": + return O.s(A.$s, 2, "0"); + case "SSS": + return O.s(A.$ms, 3, "0"); + case "Z": + return M; + } + return null; + })(K) || M.replace(":", ""); + })); + }, h.utcOffset = function() { + return 15 * -Math.round(this.$d.getTimezoneOffset() / 15); + }, h.diff = function(p, A, v) { + var T, M = this, N = O.p(A), R = I(p), G = (R.utcOffset() - this.utcOffset()) * n, x = this - R, oe = function() { + return O.m(M, R); + }; + switch (N) { + case B: + T = oe() / 12; + break; + case m: + T = oe(); + break; + case w: + T = oe() / 3; + break; + case c: + T = (x - G) / 6048e5; + break; + case l: + T = (x - G) / 864e5; + break; + case d: + T = x / i; + break; + case r: + T = x / n; + break; + case t: + T = x / o; + break; + default: + T = x; + } + return v ? T : O.a(T); + }, h.daysInMonth = function() { + return this.endOf(m).$D; + }, h.$locale = function() { + return X[this.$L]; + }, h.locale = function(p, A) { + if (!p) return this.$L; + var v = this.clone(), T = me(p, A, !0); + return T && (v.$L = T), v; + }, h.clone = function() { + return O.w(this.$d, this); + }, h.toDate = function() { + return new Date(this.valueOf()); + }, h.toJSON = function() { + return this.isValid() ? this.toISOString() : null; + }, h.toISOString = function() { + return this.$d.toISOString(); + }, h.toString = function() { + return this.$d.toUTCString(); + }, D; + })(), Pe = Ae.prototype; + return I.prototype = Pe, [["$ms", f], ["$s", t], ["$m", r], ["$H", d], ["$W", l], ["$M", m], ["$y", B], ["$D", _]].forEach((function(D) { + Pe[D[1]] = function(h) { + return this.$g(h, D[0], D[1]); + }; + })), I.extend = function(D, h) { + return D.$i || (D(h, Ae, I), D.$i = !0), I; + }, I.locale = me, I.isDayjs = U, I.unix = function(D) { + return I(1e3 * D); + }, I.en = X[Y], I.Ls = X, I.p = {}, I; + })); + })(Ne)), Ne.exports; +} +var vo = po(); +const Ee = /* @__PURE__ */ ma(vo); +var qe = { exports: {} }, mo = qe.exports, ta; +function bo() { + return ta || (ta = 1, (function(e, a) { + (function(o, n) { + e.exports = n(); + })(mo, (function() { + return function(o, n, i) { + o = o || {}; + var f = n.prototype, t = { future: "in %s", past: "%s ago", s: "a few seconds", m: "a minute", mm: "%d minutes", h: "an hour", hh: "%d hours", d: "a day", dd: "%d days", M: "a month", MM: "%d months", y: "a year", yy: "%d years" }; + function r(l, c, m, w) { + return f.fromToBase(l, c, m, w); + } + i.en.relativeTime = t, f.fromToBase = function(l, c, m, w, B) { + for (var _, s, E, g = m.$locale().relativeTime || t, C = o.thresholds || [{ l: "s", r: 44, d: "second" }, { l: "m", r: 89 }, { l: "mm", r: 44, d: "minute" }, { l: "h", r: 89 }, { l: "hh", r: 21, d: "hour" }, { l: "d", r: 35 }, { l: "dd", r: 25, d: "day" }, { l: "M", r: 45 }, { l: "MM", r: 10, d: "month" }, { l: "y", r: 17 }, { l: "yy", d: "year" }], Z = C.length, le = 0; le < Z; le += 1) { + var Y = C[le]; + Y.d && (_ = w ? i(l).diff(m, Y.d, !0) : m.diff(l, Y.d, !0)); + var X = (o.rounding || Math.round)(Math.abs(_)); + if (E = _ > 0, X <= Y.r || !Y.r) { + X <= 1 && le > 0 && (Y = C[le - 1]); + var ie = g[Y.l]; + B && (X = B("" + X)), s = typeof ie == "string" ? ie.replace("%d", X) : ie(X, c, Y.l, E); + break; + } + } + if (c) return s; + var U = E ? g.future : g.past; + return typeof U == "function" ? U(s) : U.replace("%s", s); + }, f.to = function(l, c) { + return r(l, c, this, !0); + }, f.from = function(l, c) { + return r(l, c, this); + }; + var d = function(l) { + return l.$u ? i.utc() : i(); + }; + f.toNow = function(l) { + return this.to(d(this), l); + }, f.fromNow = function(l) { + return this.from(d(this), l); + }; + }; + })); + })(qe)), qe.exports; +} +var ho = bo(); +const go = /* @__PURE__ */ ma(ho); +Ee.extend(go); +const $o = j({ + name: "EliTabelaCelulaData", + props: { + dados: { + type: Object, + required: !1 + } + }, + setup({ dados: e }) { + const a = S(() => { + const o = e == null ? void 0 : e.valor; + if (!o) return ""; + const n = (e == null ? void 0 : e.formato) ?? "data"; + return n === "relativo" ? Ee(o).fromNow() : n === "data_hora" ? Ee(o).format("DD/MM/YYYY HH:mm") : Ee(o).format("DD/MM/YYYY"); + }); + return { dados: e, textoData: a }; + } +}), yo = { key: 1 }; +function _o(e, a, o, n, i, f) { + var t; + return (t = e.dados) != null && t.acao ? (u(), y("button", { + key: 0, + type: "button", + class: "eli-tabela__celula-link", + onClick: a[0] || (a[0] = ue((r) => e.dados.acao(), ["stop", "prevent"])) + }, L(e.textoData), 1)) : (u(), y("span", yo, L(e.textoData), 1)); +} +const Eo = /* @__PURE__ */ z($o, [["render", _o], ["__scopeId", "data-v-2b88bbb2"]]), Co = { + textoSimples: Kt, + textoTruncado: to, + numero: lo, + tags: co, + data: Eo +}, Ao = j({ name: "EliTabelaCelula", props: { celula: { @@ -992,16 +1397,16 @@ const Kt = /* @__PURE__ */ H(Zt, [["render", Gt], ["__scopeId", "data-v-e7bac7ff } }, setup(e) { - const a = k(() => e.celula[0]), o = k(() => e.celula[1]), n = k(() => Qt[a.value]), i = k(() => o.value); + const a = S(() => e.celula[0]), o = S(() => e.celula[1]), n = S(() => Co[a.value]), i = S(() => o.value); return { Componente: n, dadosParaComponente: i }; } }); -function eo(e, a, o, n, i, h) { - return u(), x(Be(e.Componente), { dados: e.dadosParaComponente }, null, 8, ["dados"]); +function So(e, a, o, n, i, f) { + return u(), W(Me(e.Componente), { dados: e.dadosParaComponente }, null, 8, ["dados"]); } -const fa = /* @__PURE__ */ H(xt, [["render", eo]]), ao = U({ +const ba = /* @__PURE__ */ z(Ao, [["render", So]]), ko = j({ name: "EliTabelaDetalhesLinha", - components: { EliTabelaCelula: fa }, + components: { EliTabelaCelula: ba }, props: { linha: { type: null, @@ -1012,31 +1417,31 @@ const fa = /* @__PURE__ */ H(xt, [["render", eo]]), ao = U({ required: !0 } } -}), to = { class: "eli-tabela__detalhes" }, oo = { class: "eli-tabela__detalhe-rotulo" }, no = { class: "eli-tabela__detalhe-valor" }; -function ro(e, a, o, n, i, h) { - const t = Z("EliTabelaCelula"); - return u(), g("div", to, [ - (u(!0), g(le, null, fe(e.colunasInvisiveis, (r, d) => (u(), g("div", { +}), Do = { class: "eli-tabela__detalhes" }, Mo = { class: "eli-tabela__detalhe-rotulo" }, Bo = { class: "eli-tabela__detalhe-valor" }; +function To(e, a, o, n, i, f) { + const t = Q("EliTabelaCelula"); + return u(), y("div", Do, [ + (u(!0), y(re, null, fe(e.colunasInvisiveis, (r, d) => (u(), y("div", { key: `det-${d}-${r.rotulo}`, class: "eli-tabela__detalhe" }, [ - b("div", oo, j(r.rotulo), 1), - b("div", no, [ - V(t, { + $("div", Mo, L(r.rotulo), 1), + $("div", Bo, [ + q(t, { celula: r.celula(e.linha) }, null, 8, ["celula"]) ]) ]))), 128)) ]); } -const lo = /* @__PURE__ */ H(ao, [["render", ro], ["__scopeId", "data-v-f1ee8d20"]]), io = U({ +const wo = /* @__PURE__ */ z(ko, [["render", To], ["__scopeId", "data-v-f1ee8d20"]]), Po = j({ name: "EliTabelaBody", components: { - EliTabelaCelula: fa, - EliTabelaDetalhesLinha: lo, - MoreVertical: ot, - ChevronRight: xe, - ChevronDown: Qe + EliTabelaCelula: ba, + EliTabelaDetalhesLinha: wo, + MoreVertical: ft, + ChevronRight: ea, + ChevronDown: xe }, props: { colunas: { @@ -1082,97 +1487,97 @@ const lo = /* @__PURE__ */ H(ao, [["render", ro], ["__scopeId", "data-v-f1ee8d20 }, setup() { return { - ChevronRight: xe, - ChevronDown: Qe + ChevronRight: ea, + ChevronDown: xe }; } -}), so = { class: "eli-tabela__tbody" }, uo = ["aria-expanded", "aria-label", "title", "onClick"], co = ["id", "disabled", "aria-expanded", "aria-controls", "aria-label", "title", "onClick"], fo = ["colspan"]; -function vo(e, a, o, n, i, h) { - const t = Z("EliTabelaCelula"), r = Z("MoreVertical"), d = Z("EliTabelaDetalhesLinha"); - return u(), g("tbody", so, [ - (u(!0), g(le, null, fe(e.linhas, (l, p) => { - var y, O, P, A, s, C; - return u(), g(le, { - key: `grp-${p}` +}), Oo = { class: "eli-tabela__tbody" }, Fo = ["aria-expanded", "aria-label", "title", "onClick"], Vo = ["id", "disabled", "aria-expanded", "aria-controls", "aria-label", "title", "onClick"], Io = ["colspan"]; +function No(e, a, o, n, i, f) { + const t = Q("EliTabelaCelula"), r = Q("MoreVertical"), d = Q("EliTabelaDetalhesLinha"); + return u(), y("tbody", Oo, [ + (u(!0), y(re, null, fe(e.linhas, (l, c) => { + var m, w, B, _, s, E; + return u(), y(re, { + key: `grp-${c}` }, [ - b("tr", { - class: Se(["eli-tabela__tr", [p % 2 === 1 ? "eli-tabela__tr--zebra" : void 0]]) + $("tr", { + class: De(["eli-tabela__tr", [c % 2 === 1 ? "eli-tabela__tr--zebra" : void 0]]) }, [ - e.temColunasInvisiveis ? (u(), g("td", { + e.temColunasInvisiveis ? (u(), y("td", { class: "eli-tabela__td eli-tabela__td--expander", - key: `td-${p}-exp` + key: `td-${c}-exp` }, [ - b("button", { + $("button", { type: "button", - class: Se(["eli-tabela__expander-botao", [(y = e.linhasExpandidas) != null && y[p] ? "eli-tabela__expander-botao--ativo" : void 0]]), - "aria-expanded": (O = e.linhasExpandidas) != null && O[p] ? "true" : "false", - "aria-label": (P = e.linhasExpandidas) != null && P[p] ? "Ocultar colunas ocultas" : "Mostrar colunas ocultas", - title: (A = e.linhasExpandidas) != null && A[p] ? "Ocultar detalhes" : "Mostrar detalhes", - onClick: ue(($) => e.alternarLinhaExpandida(p), ["stop"]) + class: De(["eli-tabela__expander-botao", [(m = e.linhasExpandidas) != null && m[c] ? "eli-tabela__expander-botao--ativo" : void 0]]), + "aria-expanded": (w = e.linhasExpandidas) != null && w[c] ? "true" : "false", + "aria-label": (B = e.linhasExpandidas) != null && B[c] ? "Ocultar colunas ocultas" : "Mostrar colunas ocultas", + title: (_ = e.linhasExpandidas) != null && _[c] ? "Ocultar detalhes" : "Mostrar detalhes", + onClick: ue((g) => e.alternarLinhaExpandida(c), ["stop"]) }, [ - (u(), x(Be((s = e.linhasExpandidas) != null && s[p] ? e.ChevronDown : e.ChevronRight), { + (u(), W(Me((s = e.linhasExpandidas) != null && s[c] ? e.ChevronDown : e.ChevronRight), { class: "eli-tabela__expander-icone", size: 16, "stroke-width": 2, "aria-hidden": "true" })) - ], 10, uo) - ])) : Q("", !0), - (u(!0), g(le, null, fe(e.colunas, ($, E) => (u(), g("td", { - key: `td-${p}-${E}`, + ], 10, Fo) + ])) : ee("", !0), + (u(!0), y(re, null, fe(e.colunas, (g, C) => (u(), y("td", { + key: `td-${c}-${C}`, class: "eli-tabela__td" }, [ - V(t, { - celula: $.celula(l) + q(t, { + celula: g.celula(l) }, null, 8, ["celula"]) ]))), 128)), - e.temAcoes ? (u(), g("td", { + e.temAcoes ? (u(), y("td", { class: "eli-tabela__td eli-tabela__td--acoes", - key: `td-${p}-acoes` + key: `td-${c}-acoes` }, [ - b("div", { - class: Se(["eli-tabela__acoes-container", [e.menuAberto === p ? "eli-tabela__acoes-container--aberto" : void 0]]) + $("div", { + class: De(["eli-tabela__acoes-container", [e.menuAberto === c ? "eli-tabela__acoes-container--aberto" : void 0]]) }, [ - b("button", { + $("button", { class: "eli-tabela__acoes-toggle", type: "button", - id: `eli-tabela-acoes-toggle-${p}`, - disabled: !e.possuiAcoes(p), + id: `eli-tabela-acoes-toggle-${c}`, + disabled: !e.possuiAcoes(c), "aria-haspopup": "menu", - "aria-expanded": e.menuAberto === p ? "true" : "false", - "aria-controls": e.possuiAcoes(p) ? `eli-tabela-acoes-menu-${p}` : void 0, - "aria-label": e.possuiAcoes(p) ? "Ações da linha" : "Nenhuma ação disponível", - title: e.possuiAcoes(p) ? "Ações" : "Nenhuma ação disponível", - onClick: ue(($) => e.toggleMenu(p, $), ["stop"]) + "aria-expanded": e.menuAberto === c ? "true" : "false", + "aria-controls": e.possuiAcoes(c) ? `eli-tabela-acoes-menu-${c}` : void 0, + "aria-label": e.possuiAcoes(c) ? "Ações da linha" : "Nenhuma ação disponível", + title: e.possuiAcoes(c) ? "Ações" : "Nenhuma ação disponível", + onClick: ue((g) => e.toggleMenu(c, g), ["stop"]) }, [ - V(r, { + q(r, { class: "eli-tabela__acoes-toggle-icone", size: 18, "stroke-width": 2 }) - ], 8, co) + ], 8, Vo) ], 2) - ])) : Q("", !0) + ])) : ee("", !0) ], 2), - e.temColunasInvisiveis && ((C = e.linhasExpandidas) != null && C[p]) ? (u(), g("tr", { + e.temColunasInvisiveis && ((E = e.linhasExpandidas) != null && E[c]) ? (u(), y("tr", { key: 0, - class: Se(["eli-tabela__tr eli-tabela__tr--detalhes", [p % 2 === 1 ? "eli-tabela__tr--zebra" : void 0]]) + class: De(["eli-tabela__tr eli-tabela__tr--detalhes", [c % 2 === 1 ? "eli-tabela__tr--zebra" : void 0]]) }, [ - b("td", { + $("td", { class: "eli-tabela__td eli-tabela__td--detalhes", colspan: (e.temColunasInvisiveis ? 1 : 0) + e.colunas.length + (e.temAcoes ? 1 : 0) }, [ - V(d, { + q(d, { linha: l, colunasInvisiveis: e.colunasInvisiveis }, null, 8, ["linha", "colunasInvisiveis"]) - ], 8, fo) - ], 2)) : Q("", !0) + ], 8, Io) + ], 2)) : ee("", !0) ], 64); }), 128)) ]); } -const po = /* @__PURE__ */ H(io, [["render", vo]]), mo = U({ +const qo = /* @__PURE__ */ z(Po, [["render", No]]), Lo = j({ name: "EliTabelaMenuAcoes", props: { menuAberto: { @@ -1199,57 +1604,57 @@ const po = /* @__PURE__ */ H(io, [["render", vo]]), mo = U({ } }, setup(e, { emit: a, expose: o }) { - const n = I(null); + const n = F(null); o({ menuEl: n }); - const i = k(() => e.acoes.length > 0); - function h(t) { + const i = S(() => e.acoes.length > 0); + function f(t) { e.linha && a("executar", { acao: t.acao, linha: e.linha }); } - return { menuEl: n, possuiAcoes: i, emitExecutar: h }; + return { menuEl: n, possuiAcoes: i, emitExecutar: f }; } -}), bo = ["id", "aria-labelledby"], ho = ["aria-label", "title", "onClick"], go = { class: "eli-tabela__acoes-item-texto" }; -function $o(e, a, o, n, i, h) { - return u(), x(Ea, { to: "body" }, [ - e.menuAberto !== null && e.possuiAcoes ? (u(), g("ul", { +}), jo = ["id", "aria-labelledby"], zo = ["aria-label", "title", "onClick"], Uo = { class: "eli-tabela__acoes-item-texto" }; +function Ho(e, a, o, n, i, f) { + return u(), W(Da, { to: "body" }, [ + e.menuAberto !== null && e.possuiAcoes ? (u(), y("ul", { key: 0, id: `eli-tabela-acoes-menu-${e.menuAberto}`, ref: "menuEl", class: "eli-tabela__acoes-menu", role: "menu", "aria-labelledby": `eli-tabela-acoes-toggle-${e.menuAberto}`, - style: je({ + style: ze({ position: "fixed", top: `${e.posicao.top}px`, left: `${e.posicao.left}px`, zIndex: 999999 }) }, [ - (u(!0), g(le, null, fe(e.acoes, (t) => (u(), g("li", { + (u(!0), y(re, null, fe(e.acoes, (t) => (u(), y("li", { key: `acao-${e.menuAberto}-${t.indice}`, class: "eli-tabela__acoes-item", role: "none" }, [ - b("button", { + $("button", { type: "button", class: "eli-tabela__acoes-item-botao", - style: je({ color: t.acao.cor }), + style: ze({ color: t.acao.cor }), role: "menuitem", "aria-label": t.acao.rotulo, title: t.acao.rotulo, onClick: ue((r) => e.emitExecutar(t), ["stop"]) }, [ - (u(), x(Be(t.acao.icone), { + (u(), W(Me(t.acao.icone), { class: "eli-tabela__acoes-item-icone", size: 16, "stroke-width": 2 })), - b("span", go, j(t.acao.rotulo), 1) - ], 12, ho) + $("span", Uo, L(t.acao.rotulo), 1) + ], 12, zo) ]))), 128)) - ], 12, bo)) : Q("", !0) + ], 12, jo)) : ee("", !0) ]); } -const yo = /* @__PURE__ */ H(mo, [["render", $o]]), _o = U({ +const Yo = /* @__PURE__ */ z(Lo, [["render", Ho]]), Ro = j({ name: "EliTabelaPaginacao", props: { pagina: { @@ -1271,89 +1676,89 @@ const yo = /* @__PURE__ */ H(mo, [["render", $o]]), _o = U({ } }, setup(e, { emit: a }) { - const o = k(() => { + const o = S(() => { const l = e.maximoBotoes; return typeof l == "number" && l >= 5 ? Math.floor(l) : 7; - }), n = k(() => { - const l = e.totalPaginas, p = e.pagina, y = o.value, O = [], P = (E) => { - O.push({ - label: String(E), - pagina: E, - ativo: E === p + }), n = S(() => { + const l = e.totalPaginas, c = e.pagina, m = o.value, w = [], B = (C) => { + w.push({ + label: String(C), + pagina: C, + ativo: C === c }); - }, A = () => { - O.push({ label: "…", ehEllipsis: !0 }); + }, _ = () => { + w.push({ label: "…", ehEllipsis: !0 }); }; - if (l <= y) { - for (let E = 1; E <= l; E += 1) - P(E); - return O; + if (l <= m) { + for (let C = 1; C <= l; C += 1) + B(C); + return w; } - const s = Math.max(3, y - 2); - let C = Math.max(2, p - Math.floor(s / 2)), $ = C + s - 1; - $ >= l && ($ = l - 1, C = $ - s + 1), P(1), C > 2 && A(); - for (let E = C; E <= $; E += 1) - P(E); - return $ < l - 1 && A(), P(l), O; + const s = Math.max(3, m - 2); + let E = Math.max(2, c - Math.floor(s / 2)), g = E + s - 1; + g >= l && (g = l - 1, E = g - s + 1), B(1), E > 2 && _(); + for (let C = E; C <= g; C += 1) + B(C); + return g < l - 1 && _(), B(l), w; }); function i(l) { if (!l) return; - const p = Math.min(Math.max(1, l), e.totalPaginas); - p !== e.pagina && a("alterar", p); + const c = Math.min(Math.max(1, l), e.totalPaginas); + c !== e.pagina && a("alterar", c); } - const h = k(() => e.pagina <= 1), t = k(() => e.pagina >= e.totalPaginas), r = k(() => e.pagina), d = k(() => e.totalPaginas); + const f = S(() => e.pagina <= 1), t = S(() => e.pagina >= e.totalPaginas), r = S(() => e.pagina), d = S(() => e.totalPaginas); return { botoes: n, irParaPagina: i, - anteriorDesabilitado: h, + anteriorDesabilitado: f, proximaDesabilitada: t, paginaAtual: r, totalPaginasExibidas: d }; } -}), Co = { +}), Jo = { key: 0, class: "eli-tabela__paginacao", role: "navigation", "aria-label": "Paginação de resultados" -}, Eo = ["disabled"], Ao = { +}, Wo = ["disabled"], Zo = { key: 0, class: "eli-tabela__pagina-ellipsis", "aria-hidden": "true" -}, So = ["disabled", "aria-current", "aria-label", "onClick"], ko = ["disabled"]; -function Do(e, a, o, n, i, h) { - return e.totalPaginasExibidas > 1 ? (u(), g("nav", Co, [ - b("button", { +}, Xo = ["disabled", "aria-current", "aria-label", "onClick"], Go = ["disabled"]; +function Ko(e, a, o, n, i, f) { + return e.totalPaginasExibidas > 1 ? (u(), y("nav", Jo, [ + $("button", { type: "button", class: "eli-tabela__pagina-botao", disabled: e.anteriorDesabilitado, "aria-label": "Página anterior", onClick: a[0] || (a[0] = (t) => e.irParaPagina(e.paginaAtual - 1)) - }, " << ", 8, Eo), - (u(!0), g(le, null, fe(e.botoes, (t, r) => (u(), g(le, { + }, " << ", 8, Wo), + (u(!0), y(re, null, fe(e.botoes, (t, r) => (u(), y(re, { key: `${t.label}-${r}` }, [ - t.ehEllipsis ? (u(), g("span", Ao, j(t.label), 1)) : (u(), g("button", { + t.ehEllipsis ? (u(), y("span", Zo, L(t.label), 1)) : (u(), y("button", { key: 1, type: "button", - class: Se(["eli-tabela__pagina-botao", t.ativo ? "eli-tabela__pagina-botao--ativo" : void 0]), + class: De(["eli-tabela__pagina-botao", t.ativo ? "eli-tabela__pagina-botao--ativo" : void 0]), disabled: t.ativo, "aria-current": t.ativo ? "page" : void 0, "aria-label": `Ir para página ${t.label}`, onClick: (d) => e.irParaPagina(t.pagina) - }, j(t.label), 11, So)) + }, L(t.label), 11, Xo)) ], 64))), 128)), - b("button", { + $("button", { type: "button", class: "eli-tabela__pagina-botao", disabled: e.proximaDesabilitada, "aria-label": "Próxima página", onClick: a[1] || (a[1] = (t) => e.irParaPagina(e.paginaAtual + 1)) - }, " >> ", 8, ko) - ])) : Q("", !0); + }, " >> ", 8, Go) + ])) : ee("", !0); } -const Mo = /* @__PURE__ */ H(_o, [["render", Do], ["__scopeId", "data-v-5ca7a362"]]), ea = "application/x-eli-tabela-coluna", Bo = U({ +const Qo = /* @__PURE__ */ z(Ro, [["render", Ko], ["__scopeId", "data-v-5ca7a362"]]), oa = "application/x-eli-tabela-coluna", xo = j({ name: "EliTabelaModalColunas", props: { aberto: { @@ -1382,26 +1787,26 @@ const Mo = /* @__PURE__ */ H(_o, [["render", Do], ["__scopeId", "data-v-5ca7a362 } }, setup(e, { emit: a }) { - const o = I([]), n = I([]); + const o = F([]), n = F([]); function i() { - var ne, ve; - const A = e.rotulosColunas, s = (((ne = e.configInicial.visiveis) == null ? void 0 : ne.length) ?? 0) > 0 || (((ve = e.configInicial.invisiveis) == null ? void 0 : ve.length) ?? 0) > 0, C = new Set( - e.colunas.filter((R) => R.visivel === !1).map((R) => R.rotulo) - ), $ = s ? new Set(e.configInicial.invisiveis ?? []) : C, E = A.filter((R) => !$.has(R)), X = e.configInicial.visiveis ?? [], ye = new Set(E), oe = []; - for (const R of X) - ye.has(R) && oe.push(R); - for (const R of E) - oe.includes(R) || oe.push(R); - o.value = oe, n.value = A.filter((R) => $.has(R)); + var X, ie; + const _ = e.rotulosColunas, s = (((X = e.configInicial.visiveis) == null ? void 0 : X.length) ?? 0) > 0 || (((ie = e.configInicial.invisiveis) == null ? void 0 : ie.length) ?? 0) > 0, E = new Set( + e.colunas.filter((U) => U.visivel === !1).map((U) => U.rotulo) + ), g = s ? new Set(e.configInicial.invisiveis ?? []) : E, C = _.filter((U) => !g.has(U)), Z = e.configInicial.visiveis ?? [], le = new Set(C), Y = []; + for (const U of Z) + le.has(U) && Y.push(U); + for (const U of C) + Y.includes(U) || Y.push(U); + o.value = Y, n.value = _.filter((U) => g.has(U)); } - $e( + he( () => [e.aberto, e.rotulosColunas, e.configInicial, e.colunas], () => { e.aberto && i(); }, { deep: !0, immediate: !0 } ); - function h() { + function f() { a("fechar"); } function t() { @@ -1410,100 +1815,100 @@ const Mo = /* @__PURE__ */ H(_o, [["render", Do], ["__scopeId", "data-v-5ca7a362 invisiveis: [...n.value] }); } - function r(A, s) { - var C, $; + function r(_, s) { + var E, g; try { - (C = A.dataTransfer) == null || C.setData(ea, JSON.stringify(s)), ($ = A.dataTransfer) == null || $.setData("text/plain", s.rotulo), A.dataTransfer.effectAllowed = "move"; + (E = _.dataTransfer) == null || E.setData(oa, JSON.stringify(s)), (g = _.dataTransfer) == null || g.setData("text/plain", s.rotulo), _.dataTransfer.effectAllowed = "move"; } catch { } } - function d(A) { + function d(_) { var s; try { - const C = (s = A.dataTransfer) == null ? void 0 : s.getData(ea); - if (!C) return null; - const $ = JSON.parse(C); - return !$ || typeof $.rotulo != "string" || $.origem !== "visiveis" && $.origem !== "invisiveis" ? null : $; + const E = (s = _.dataTransfer) == null ? void 0 : s.getData(oa); + if (!E) return null; + const g = JSON.parse(E); + return !g || typeof g.rotulo != "string" || g.origem !== "visiveis" && g.origem !== "invisiveis" ? null : g; } catch { return null; } } - function l(A) { - const s = A.origem === "visiveis" ? o.value : n.value, C = s.indexOf(A.rotulo); - C >= 0 && s.splice(C, 1); + function l(_) { + const s = _.origem === "visiveis" ? o.value : n.value, E = s.indexOf(_.rotulo); + E >= 0 && s.splice(E, 1); } - function p(A, s, C) { - const $ = A === "visiveis" ? o.value : n.value, E = $.indexOf(s); - E >= 0 && $.splice(E, 1), C === null || C < 0 || C > $.length ? $.push(s) : $.splice(C, 0, s); + function c(_, s, E) { + const g = _ === "visiveis" ? o.value : n.value, C = g.indexOf(s); + C >= 0 && g.splice(C, 1), E === null || E < 0 || E > g.length ? g.push(s) : g.splice(E, 0, s); } - function y(A, s, C, $) { - r(A, { rotulo: s, origem: C, index: $ }); + function m(_, s, E, g) { + r(_, { rotulo: s, origem: E, index: g }); } - function O(A, s, C) { - const $ = d(A); - if ($) - if (l($), p(s, $.rotulo, C), s === "visiveis") { - const E = n.value.indexOf($.rotulo); - E >= 0 && n.value.splice(E, 1); + function w(_, s, E) { + const g = d(_); + if (g) + if (l(g), c(s, g.rotulo, E), s === "visiveis") { + const C = n.value.indexOf(g.rotulo); + C >= 0 && n.value.splice(C, 1); } else { - const E = o.value.indexOf($.rotulo); - E >= 0 && o.value.splice(E, 1); + const C = o.value.indexOf(g.rotulo); + C >= 0 && o.value.splice(C, 1); } } - function P(A, s, C) { - const $ = d(A); - if ($) - if (l($), p(s, $.rotulo, null), s === "visiveis") { - const E = n.value.indexOf($.rotulo); - E >= 0 && n.value.splice(E, 1); + function B(_, s, E) { + const g = d(_); + if (g) + if (l(g), c(s, g.rotulo, null), s === "visiveis") { + const C = n.value.indexOf(g.rotulo); + C >= 0 && n.value.splice(C, 1); } else { - const E = o.value.indexOf($.rotulo); - E >= 0 && o.value.splice(E, 1); + const C = o.value.indexOf(g.rotulo); + C >= 0 && o.value.splice(C, 1); } } return { visiveisLocal: o, invisiveisLocal: n, - emitFechar: h, + emitFechar: f, emitSalvar: t, - onDragStart: y, - onDropItem: O, - onDropLista: P + onDragStart: m, + onDropItem: w, + onDropLista: B }; } -}), wo = { +}), en = { class: "eli-tabela-modal-colunas__modal", role: "dialog", "aria-modal": "true", "aria-label": "Configurar colunas" -}, To = { class: "eli-tabela-modal-colunas__header" }, Po = { class: "eli-tabela-modal-colunas__conteudo" }, Oo = { class: "eli-tabela-modal-colunas__coluna" }, Fo = ["onDragstart", "onDrop"], Io = { class: "eli-tabela-modal-colunas__item-texto" }, No = { class: "eli-tabela-modal-colunas__coluna" }, qo = ["onDragstart", "onDrop"], Vo = { class: "eli-tabela-modal-colunas__item-texto" }, Lo = { class: "eli-tabela-modal-colunas__footer" }; -function jo(e, a, o, n, i, h) { - return e.aberto ? (u(), g("div", { +}, an = { class: "eli-tabela-modal-colunas__header" }, tn = { class: "eli-tabela-modal-colunas__conteudo" }, on = { class: "eli-tabela-modal-colunas__coluna" }, nn = ["onDragstart", "onDrop"], rn = { class: "eli-tabela-modal-colunas__item-texto" }, ln = { class: "eli-tabela-modal-colunas__coluna" }, sn = ["onDragstart", "onDrop"], un = { class: "eli-tabela-modal-colunas__item-texto" }, cn = { class: "eli-tabela-modal-colunas__footer" }; +function dn(e, a, o, n, i, f) { + return e.aberto ? (u(), y("div", { key: 0, class: "eli-tabela-modal-colunas__overlay", role: "presentation", onClick: a[9] || (a[9] = ue((...t) => e.emitFechar && e.emitFechar(...t), ["self"])) }, [ - b("div", wo, [ - b("header", To, [ - a[10] || (a[10] = b("h3", { class: "eli-tabela-modal-colunas__titulo" }, "Colunas", -1)), - b("button", { + $("div", en, [ + $("header", an, [ + a[10] || (a[10] = $("h3", { class: "eli-tabela-modal-colunas__titulo" }, "Colunas", -1)), + $("button", { type: "button", class: "eli-tabela-modal-colunas__fechar", "aria-label": "Fechar", onClick: a[0] || (a[0] = (...t) => e.emitFechar && e.emitFechar(...t)) }, " × ") ]), - b("div", Po, [ - b("div", Oo, [ - a[12] || (a[12] = b("div", { class: "eli-tabela-modal-colunas__coluna-titulo" }, "Visíveis", -1)), - b("div", { + $("div", tn, [ + $("div", on, [ + a[12] || (a[12] = $("div", { class: "eli-tabela-modal-colunas__coluna-titulo" }, "Visíveis", -1)), + $("div", { class: "eli-tabela-modal-colunas__lista", onDragover: a[2] || (a[2] = ue(() => { }, ["prevent"])), onDrop: a[3] || (a[3] = (t) => e.onDropLista(t, "visiveis", null)) }, [ - (u(!0), g(le, null, fe(e.visiveisLocal, (t, r) => (u(), g("div", { + (u(!0), y(re, null, fe(e.visiveisLocal, (t, r) => (u(), y("div", { key: `vis-${t}`, class: "eli-tabela-modal-colunas__item", draggable: "true", @@ -1512,23 +1917,23 @@ function jo(e, a, o, n, i, h) { }, ["prevent"])), onDrop: (d) => e.onDropItem(d, "visiveis", r) }, [ - a[11] || (a[11] = b("span", { + a[11] || (a[11] = $("span", { class: "eli-tabela-modal-colunas__item-handle", "aria-hidden": "true" }, "⋮⋮", -1)), - b("span", Io, j(t), 1) - ], 40, Fo))), 128)) + $("span", rn, L(t), 1) + ], 40, nn))), 128)) ], 32) ]), - b("div", No, [ - a[14] || (a[14] = b("div", { class: "eli-tabela-modal-colunas__coluna-titulo" }, "Invisíveis", -1)), - b("div", { + $("div", ln, [ + a[14] || (a[14] = $("div", { class: "eli-tabela-modal-colunas__coluna-titulo" }, "Invisíveis", -1)), + $("div", { class: "eli-tabela-modal-colunas__lista", onDragover: a[5] || (a[5] = ue(() => { }, ["prevent"])), onDrop: a[6] || (a[6] = (t) => e.onDropLista(t, "invisiveis", null)) }, [ - (u(!0), g(le, null, fe(e.invisiveisLocal, (t, r) => (u(), g("div", { + (u(!0), y(re, null, fe(e.invisiveisLocal, (t, r) => (u(), y("div", { key: `inv-${t}`, class: "eli-tabela-modal-colunas__item", draggable: "true", @@ -1537,74 +1942,74 @@ function jo(e, a, o, n, i, h) { }, ["prevent"])), onDrop: (d) => e.onDropItem(d, "invisiveis", r) }, [ - a[13] || (a[13] = b("span", { + a[13] || (a[13] = $("span", { class: "eli-tabela-modal-colunas__item-handle", "aria-hidden": "true" }, "⋮⋮", -1)), - b("span", Vo, j(t), 1) - ], 40, qo))), 128)) + $("span", un, L(t), 1) + ], 40, sn))), 128)) ], 32) ]) ]), - b("footer", Lo, [ - b("button", { + $("footer", cn, [ + $("button", { type: "button", class: "eli-tabela-modal-colunas__botao eli-tabela-modal-colunas__botao--sec", onClick: a[7] || (a[7] = (...t) => e.emitFechar && e.emitFechar(...t)) }, " Cancelar "), - b("button", { + $("button", { type: "button", class: "eli-tabela-modal-colunas__botao eli-tabela-modal-colunas__botao--prim", onClick: a[8] || (a[8] = (...t) => e.emitSalvar && e.emitSalvar(...t)) }, " Salvar ") ]) ]) - ])) : Q("", !0); + ])) : ee("", !0); } -const zo = /* @__PURE__ */ H(Bo, [["render", jo], ["__scopeId", "data-v-b8f693ef"]]); -function Uo(e) { +const fn = /* @__PURE__ */ z(xo, [["render", dn], ["__scopeId", "data-v-b8f693ef"]]); +function pn(e) { if (!Number.isFinite(e) || e <= 0 || e >= 1) return 0; const a = e.toString(); if (a.includes("e-")) { - const [, i] = a.split("e-"), h = Number(i); - return Number.isFinite(h) ? h : 0; + const [, i] = a.split("e-"), f = Number(i); + return Number.isFinite(f) ? f : 0; } const o = a.indexOf("."); return o === -1 ? 0 : a.slice(o + 1).replace(/0+$/, "").length; } -function Ho(e) { +function vn(e) { const a = (e ?? "").trim().replace(/,/g, "."); if (!a) return null; const o = Number(a); return Number.isNaN(o) ? null : o; } -function Ve(e, a) { +function Le(e, a) { return e == null ? "" : a === null ? String(e) : Number(e).toFixed(Math.max(0, a)).replace(/\./g, ","); } -function aa(e) { +function na(e) { return (e ?? "").replace(/\D+/g, ""); } -function Yo(e) { +function mn(e) { const a = (e ?? "").replace(/[^0-9.,]+/g, ""), o = a.match(/[.,]/); if (!o) return a; - const n = o[0], i = a.indexOf(n), h = a.slice(0, i).replace(/[.,]/g, ""), t = a.slice(i + 1).replace(/[.,]/g, ""); - return `${h.length ? h : "0"}${n}${t}`; + const n = o[0], i = a.indexOf(n), f = a.slice(0, i).replace(/[.,]/g, ""), t = a.slice(i + 1).replace(/[.,]/g, ""); + return `${f.length ? f : "0"}${n}${t}`; } -function Ro(e, a) { +function bn(e, a) { if (a === null) return e; if (a <= 0) return e.replace(/[.,]/g, ""); const o = e.match(/[.,]/); if (!o) return e; - const n = o[0], i = e.indexOf(n), h = e.slice(0, i), t = e.slice(i + 1); - return `${h}${n}${t.slice(0, a)}`; + const n = o[0], i = e.indexOf(n), f = e.slice(0, i), t = e.slice(i + 1); + return `${f}${n}${t.slice(0, a)}`; } -function Jo(e) { +function hn(e) { const a = e.match(/^(\d+)[.,]$/); if (!a) return null; const o = Number(a[1]); return Number.isNaN(o) ? null : o; } -const Wo = U({ +const gn = j({ name: "EliEntradaNumero", inheritAttrs: !1, props: { @@ -1627,41 +2032,41 @@ const Wo = U({ blur: () => !0 }, setup(e, { attrs: a, emit: o }) { - const n = k(() => { - var p; - const l = (p = e.opcoes) == null ? void 0 : p.precisao; - return l == null ? null : Uo(l); - }), i = k(() => n.value === 0), h = k(() => { + const n = S(() => { + var c; + const l = (c = e.opcoes) == null ? void 0 : c.precisao; + return l == null ? null : pn(l); + }), i = S(() => n.value === 0), f = S(() => { const l = n.value; return l !== null && l > 0; - }), t = I(""), r = I(void 0); - $e( + }), t = F(""), r = F(void 0); + he( () => e.value, (l) => { - l !== r.value && (t.value = Ve(l, n.value), r.value = l); + l !== r.value && (t.value = Le(l, n.value), r.value = l); }, { immediate: !0 } ); function d(l) { - if (h.value) { - const P = n.value ?? 0, A = aa(l), s = A ? Number(A) : 0, C = Math.pow(10, P), $ = A ? s / C : null, E = $ === null ? null : $; - r.value = E, o("update:value", E), o("input", E), o("change", E), t.value = Ve(E, P); + if (f.value) { + const B = n.value ?? 0, _ = na(l), s = _ ? Number(_) : 0, E = Math.pow(10, B), g = _ ? s / E : null, C = g === null ? null : g; + r.value = C, o("update:value", C), o("input", C), o("change", C), t.value = Le(C, B); return; } - const p = i.value ? aa(l) : Yo(l), y = i.value ? p : Ro(p, n.value); - let O = null; - if (y) { - const A = (i.value ? null : Jo(y)) ?? Ho(y); - O = A === null ? null : A; + const c = i.value ? na(l) : mn(l), m = i.value ? c : bn(c, n.value); + let w = null; + if (m) { + const _ = (i.value ? null : hn(m)) ?? vn(m); + w = _ === null ? null : _; } - r.value = O, o("update:value", O), o("input", O), o("change", O), t.value = Ve(O, n.value); + r.value = w, o("update:value", w), o("input", w), o("change", w), t.value = Le(w, n.value); } return { attrs: a, emit: o, displayValue: t, isInteiro: i, onUpdateModelValue: d }; } -}), Zo = { class: "eli-entrada__prefixo" }, Xo = { class: "eli-entrada__sufixo" }; -function Go(e, a, o, n, i, h) { +}), $n = { class: "eli-entrada__prefixo" }, yn = { class: "eli-entrada__sufixo" }; +function _n(e, a, o, n, i, f) { var t, r, d, l; - return u(), x(ze, Me({ + return u(), W(Ue, Ce({ "model-value": e.displayValue, label: (t = e.opcoes) == null ? void 0 : t.rotulo, placeholder: (r = e.opcoes) == null ? void 0 : r.placeholder, @@ -1672,307 +2077,24 @@ function Go(e, a, o, n, i, h) { "onUpdate:modelValue": e.onUpdateModelValue, onFocus: a[0] || (a[0] = () => e.emit("focus")), onBlur: a[1] || (a[1] = () => e.emit("blur")) - }), Aa({ _: 2 }, [ + }), Ma({ _: 2 }, [ (d = e.opcoes) != null && d.prefixo ? { name: "prepend-inner", fn: te(() => [ - b("span", Zo, j(e.opcoes.prefixo), 1) + $("span", $n, L(e.opcoes.prefixo), 1) ]), key: "0" } : void 0, (l = e.opcoes) != null && l.sufixo ? { name: "append-inner", fn: te(() => [ - b("span", Xo, j(e.opcoes.sufixo), 1) + $("span", yn, L(e.opcoes.sufixo), 1) ]), key: "1" } : void 0 ]), 1040, ["model-value", "label", "placeholder", "type", "inputmode", "pattern", "onUpdate:modelValue"]); } -const va = /* @__PURE__ */ H(Wo, [["render", Go], ["__scopeId", "data-v-77cbf216"]]); -function Ko(e) { - return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e; -} -var qe = { exports: {} }, Qo = qe.exports, ta; -function xo() { - return ta || (ta = 1, (function(e, a) { - (function(o, n) { - e.exports = n(); - })(Qo, (function() { - var o = 1e3, n = 6e4, i = 36e5, h = "millisecond", t = "second", r = "minute", d = "hour", l = "day", p = "week", y = "month", O = "quarter", P = "year", A = "date", s = "Invalid Date", C = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/, $ = /\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g, E = { name: "en", weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), ordinal: function(D) { - var m = ["th", "st", "nd", "rd"], c = D % 100; - return "[" + D + (m[(c - 20) % 10] || m[c] || m[0]) + "]"; - } }, X = function(D, m, c) { - var _ = String(D); - return !_ || _.length >= m ? D : "" + Array(m + 1 - _.length).join(c) + D; - }, ye = { s: X, z: function(D) { - var m = -D.utcOffset(), c = Math.abs(m), _ = Math.floor(c / 60), f = c % 60; - return (m <= 0 ? "+" : "-") + X(_, 2, "0") + ":" + X(f, 2, "0"); - }, m: function D(m, c) { - if (m.date() < c.date()) return -D(c, m); - var _ = 12 * (c.year() - m.year()) + (c.month() - m.month()), f = m.clone().add(_, y), B = c - f < 0, M = m.clone().add(_ + (B ? -1 : 1), y); - return +(-(_ + (c - f) / (B ? f - M : M - f)) || 0); - }, a: function(D) { - return D < 0 ? Math.ceil(D) || 0 : Math.floor(D); - }, p: function(D) { - return { M: y, y: P, w: p, d: l, D: A, h: d, m: r, s: t, ms: h, Q: O }[D] || String(D || "").toLowerCase().replace(/s$/, ""); - }, u: function(D) { - return D === void 0; - } }, oe = "en", ne = {}; - ne[oe] = E; - var ve = "$isDayjsObject", R = function(D) { - return D instanceof Ce || !(!D || !D[ve]); - }, pe = function D(m, c, _) { - var f; - if (!m) return oe; - if (typeof m == "string") { - var B = m.toLowerCase(); - ne[B] && (f = B), c && (ne[B] = c, f = B); - var M = m.split("-"); - if (!f && M.length > 1) return D(M[0]); - } else { - var q = m.name; - ne[q] = m, f = q; - } - return !_ && f && (oe = f), f || !_ && oe; - }, N = function(D, m) { - if (R(D)) return D.clone(); - var c = typeof m == "object" ? m : {}; - return c.date = D, c.args = arguments, new Ce(c); - }, T = ye; - T.l = pe, T.i = R, T.w = function(D, m) { - return N(D, { locale: m.$L, utc: m.$u, x: m.$x, $offset: m.$offset }); - }; - var Ce = (function() { - function D(c) { - this.$L = pe(c.locale, null, !0), this.parse(c), this.$x = this.$x || c.x || {}, this[ve] = !0; - } - var m = D.prototype; - return m.parse = function(c) { - this.$d = (function(_) { - var f = _.date, B = _.utc; - if (f === null) return /* @__PURE__ */ new Date(NaN); - if (T.u(f)) return /* @__PURE__ */ new Date(); - if (f instanceof Date) return new Date(f); - if (typeof f == "string" && !/Z$/i.test(f)) { - var M = f.match(C); - if (M) { - var q = M[2] - 1 || 0, z = (M[7] || "0").substring(0, 3); - return B ? new Date(Date.UTC(M[1], q, M[3] || 1, M[4] || 0, M[5] || 0, M[6] || 0, z)) : new Date(M[1], q, M[3] || 1, M[4] || 0, M[5] || 0, M[6] || 0, z); - } - } - return new Date(f); - })(c), this.init(); - }, m.init = function() { - var c = this.$d; - this.$y = c.getFullYear(), this.$M = c.getMonth(), this.$D = c.getDate(), this.$W = c.getDay(), this.$H = c.getHours(), this.$m = c.getMinutes(), this.$s = c.getSeconds(), this.$ms = c.getMilliseconds(); - }, m.$utils = function() { - return T; - }, m.isValid = function() { - return this.$d.toString() !== s; - }, m.isSame = function(c, _) { - var f = N(c); - return this.startOf(_) <= f && f <= this.endOf(_); - }, m.isAfter = function(c, _) { - return N(c) < this.startOf(_); - }, m.isBefore = function(c, _) { - return this.endOf(_) < N(c); - }, m.$g = function(c, _, f) { - return T.u(c) ? this[_] : this.set(f, c); - }, m.unix = function() { - return Math.floor(this.valueOf() / 1e3); - }, m.valueOf = function() { - return this.$d.getTime(); - }, m.startOf = function(c, _) { - var f = this, B = !!T.u(_) || _, M = T.p(c), q = function(ge, W) { - var ce = T.w(f.$u ? Date.UTC(f.$y, W, ge) : new Date(f.$y, W, ge), f); - return B ? ce : ce.endOf(l); - }, z = function(ge, W) { - return T.w(f.toDate()[ge].apply(f.toDate("s"), (B ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(W)), f); - }, J = this.$W, G = this.$M, ee = this.$D, be = "set" + (this.$u ? "UTC" : ""); - switch (M) { - case P: - return B ? q(1, 0) : q(31, 11); - case y: - return B ? q(1, G) : q(0, G + 1); - case p: - var he = this.$locale().weekStart || 0, Ee = (J < he ? J + 7 : J) - he; - return q(B ? ee - Ee : ee + (6 - Ee), G); - case l: - case A: - return z(be + "Hours", 0); - case d: - return z(be + "Minutes", 1); - case r: - return z(be + "Seconds", 2); - case t: - return z(be + "Milliseconds", 3); - default: - return this.clone(); - } - }, m.endOf = function(c) { - return this.startOf(c, !1); - }, m.$set = function(c, _) { - var f, B = T.p(c), M = "set" + (this.$u ? "UTC" : ""), q = (f = {}, f[l] = M + "Date", f[A] = M + "Date", f[y] = M + "Month", f[P] = M + "FullYear", f[d] = M + "Hours", f[r] = M + "Minutes", f[t] = M + "Seconds", f[h] = M + "Milliseconds", f)[B], z = B === l ? this.$D + (_ - this.$W) : _; - if (B === y || B === P) { - var J = this.clone().set(A, 1); - J.$d[q](z), J.init(), this.$d = J.set(A, Math.min(this.$D, J.daysInMonth())).$d; - } else q && this.$d[q](z); - return this.init(), this; - }, m.set = function(c, _) { - return this.clone().$set(c, _); - }, m.get = function(c) { - return this[T.p(c)](); - }, m.add = function(c, _) { - var f, B = this; - c = Number(c); - var M = T.p(_), q = function(G) { - var ee = N(B); - return T.w(ee.date(ee.date() + Math.round(G * c)), B); - }; - if (M === y) return this.set(y, this.$M + c); - if (M === P) return this.set(P, this.$y + c); - if (M === l) return q(1); - if (M === p) return q(7); - var z = (f = {}, f[r] = n, f[d] = i, f[t] = o, f)[M] || 1, J = this.$d.getTime() + c * z; - return T.w(J, this); - }, m.subtract = function(c, _) { - return this.add(-1 * c, _); - }, m.format = function(c) { - var _ = this, f = this.$locale(); - if (!this.isValid()) return f.invalidDate || s; - var B = c || "YYYY-MM-DDTHH:mm:ssZ", M = T.z(this), q = this.$H, z = this.$m, J = this.$M, G = f.weekdays, ee = f.months, be = f.meridiem, he = function(W, ce, _e, ke) { - return W && (W[ce] || W(_, B)) || _e[ce].slice(0, ke); - }, Ee = function(W) { - return T.s(q % 12 || 12, W, "0"); - }, ge = be || function(W, ce, _e) { - var ke = W < 12 ? "AM" : "PM"; - return _e ? ke.toLowerCase() : ke; - }; - return B.replace($, (function(W, ce) { - return ce || (function(_e) { - switch (_e) { - case "YY": - return String(_.$y).slice(-2); - case "YYYY": - return T.s(_.$y, 4, "0"); - case "M": - return J + 1; - case "MM": - return T.s(J + 1, 2, "0"); - case "MMM": - return he(f.monthsShort, J, ee, 3); - case "MMMM": - return he(ee, J); - case "D": - return _.$D; - case "DD": - return T.s(_.$D, 2, "0"); - case "d": - return String(_.$W); - case "dd": - return he(f.weekdaysMin, _.$W, G, 2); - case "ddd": - return he(f.weekdaysShort, _.$W, G, 3); - case "dddd": - return G[_.$W]; - case "H": - return String(q); - case "HH": - return T.s(q, 2, "0"); - case "h": - return Ee(1); - case "hh": - return Ee(2); - case "a": - return ge(q, z, !0); - case "A": - return ge(q, z, !1); - case "m": - return String(z); - case "mm": - return T.s(z, 2, "0"); - case "s": - return String(_.$s); - case "ss": - return T.s(_.$s, 2, "0"); - case "SSS": - return T.s(_.$ms, 3, "0"); - case "Z": - return M; - } - return null; - })(W) || M.replace(":", ""); - })); - }, m.utcOffset = function() { - return 15 * -Math.round(this.$d.getTimezoneOffset() / 15); - }, m.diff = function(c, _, f) { - var B, M = this, q = T.p(_), z = N(c), J = (z.utcOffset() - this.utcOffset()) * n, G = this - z, ee = function() { - return T.m(M, z); - }; - switch (q) { - case P: - B = ee() / 12; - break; - case y: - B = ee(); - break; - case O: - B = ee() / 3; - break; - case p: - B = (G - J) / 6048e5; - break; - case l: - B = (G - J) / 864e5; - break; - case d: - B = G / i; - break; - case r: - B = G / n; - break; - case t: - B = G / o; - break; - default: - B = G; - } - return f ? B : T.a(B); - }, m.daysInMonth = function() { - return this.endOf(y).$D; - }, m.$locale = function() { - return ne[this.$L]; - }, m.locale = function(c, _) { - if (!c) return this.$L; - var f = this.clone(), B = pe(c, _, !0); - return B && (f.$L = B), f; - }, m.clone = function() { - return T.w(this.$d, this); - }, m.toDate = function() { - return new Date(this.valueOf()); - }, m.toJSON = function() { - return this.isValid() ? this.toISOString() : null; - }, m.toISOString = function() { - return this.$d.toISOString(); - }, m.toString = function() { - return this.$d.toUTCString(); - }, D; - })(), Te = Ce.prototype; - return N.prototype = Te, [["$ms", h], ["$s", t], ["$m", r], ["$H", d], ["$W", l], ["$M", y], ["$y", P], ["$D", A]].forEach((function(D) { - Te[D[1]] = function(m) { - return this.$g(m, D[0], D[1]); - }; - })), N.extend = function(D, m) { - return D.$i || (D(m, Ce, N), D.$i = !0), N; - }, N.locale = pe, N.isDayjs = R, N.unix = function(D) { - return N(1e3 * D); - }, N.en = ne[oe], N.Ls = ne, N.p = {}, N; - })); - })(qe)), qe.exports; -} -var en = xo(); -const Ie = /* @__PURE__ */ Ko(en), an = U({ +const ha = /* @__PURE__ */ z(gn, [["render", _n], ["__scopeId", "data-v-77cbf216"]]), En = j({ name: "EliEntradaDataHora", inheritAttrs: !1, props: { @@ -2023,7 +2145,7 @@ const Ie = /* @__PURE__ */ Ko(en), an = U({ blur: () => !0 }, setup(e, { emit: a, attrs: o }) { - const n = k(() => e.opcoes ? e.opcoes : { + const n = S(() => e.opcoes ? e.opcoes : { rotulo: e.rotulo ?? "Data e hora", placeholder: e.placeholder ?? "", modo: e.modo ?? "dataHora", @@ -2036,59 +2158,59 @@ const Ie = /* @__PURE__ */ Ko(en), an = U({ variante: e.variante, min: e.min, max: e.max - }), i = k( + }), i = S( () => n.value.modo ?? "dataHora" - ), h = k(() => !!e.desabilitado), t = k( + ), f = S(() => !!e.desabilitado), t = S( () => i.value === "data" ? "date" : "datetime-local" ); function r(s) { - return i.value === "data" ? Ie(s).format("YYYY-MM-DD") : Ie(s).format("YYYY-MM-DDTHH:mm"); + return i.value === "data" ? Ee(s).format("YYYY-MM-DD") : Ee(s).format("YYYY-MM-DDTHH:mm"); } function d(s) { - return i.value === "data" ? Ie(`${s}T00:00`).format() : Ie(s).format(); + return i.value === "data" ? Ee(`${s}T00:00`).format() : Ee(s).format(); } - const l = k(() => e.value !== void 0 ? e.value ?? null : e.modelValue), p = k({ + const l = S(() => e.value !== void 0 ? e.value ?? null : e.modelValue), c = S({ get: () => l.value ? r(l.value) : "", set: (s) => { - const C = s && s.length > 0 ? s : null; - if (!C) { + const E = s && s.length > 0 ? s : null; + if (!E) { a("update:value", null), a("input", null), a("change", null), a("update:modelValue", null), a("alterar", null); return; } - const $ = d(C); - a("update:value", $), a("input", $), a("change", $), a("update:modelValue", $), a("alterar", $); + const g = d(E); + a("update:value", g), a("input", g), a("change", g), a("update:modelValue", g), a("alterar", g); } - }), y = k(() => { + }), m = S(() => { const s = n.value.min; if (s) return r(s); - }), O = k(() => { + }), w = S(() => { const s = n.value.max; if (s) return r(s); }); - function P() { + function B() { a("foco"), a("focus"); } - function A() { + function _() { a("desfoco"), a("blur"); } return { attrs: o, - valor: p, + valor: c, tipoInput: t, - minLocal: y, - maxLocal: O, + minLocal: m, + maxLocal: w, opcoesEfetivas: n, - desabilitadoEfetivo: h, - emitCompatFocus: P, - emitCompatBlur: A + desabilitadoEfetivo: f, + emitCompatFocus: B, + emitCompatBlur: _ }; } -}), tn = { class: "eli-data-hora" }; -function on(e, a, o, n, i, h) { - return u(), g("div", tn, [ - V(ze, Me({ +}), Cn = { class: "eli-data-hora" }; +function An(e, a, o, n, i, f) { + return u(), y("div", Cn, [ + q(Ue, Ce({ modelValue: e.valor, "onUpdate:modelValue": a[0] || (a[0] = (t) => e.valor = t), type: e.tipoInput, @@ -2110,16 +2232,141 @@ function on(e, a, o, n, i, h) { }), null, 16, ["modelValue", "type", "label", "placeholder", "disabled", "clearable", "error", "error-messages", "hint", "persistent-hint", "density", "variant", "min", "max", "onFocus", "onBlur"]) ]); } -const pa = /* @__PURE__ */ H(an, [["render", on], ["__scopeId", "data-v-1bfd1be8"]]); -function nn(e) { +const ga = /* @__PURE__ */ z(En, [["render", An], ["__scopeId", "data-v-1bfd1be8"]]), Sn = j({ + name: "EliEntradaParagrafo", + components: { VTextarea: Va }, + inheritAttrs: !1, + props: { + value: { + type: [String, null], + default: void 0 + }, + opcoes: { + type: Object, + required: !0 + } + }, + emits: { + "update:value": (e) => !0, + input: (e) => !0, + change: (e) => !0, + focus: () => !0, + blur: () => !0 + }, + setup(e, { attrs: a, emit: o }) { + const n = S({ + get: () => e.value, + set: (i) => { + o("update:value", i), o("input", i), o("change", i); + } + }); + return { attrs: a, emit: o, localValue: n, opcoes: e.opcoes }; + } +}); +function kn(e, a, o, n, i, f) { + var t, r, d, l, c, m, w, B, _, s, E, g; + return u(), W(qa, Ce({ + modelValue: e.localValue, + "onUpdate:modelValue": a[0] || (a[0] = (C) => e.localValue = C), + label: (t = e.opcoes) == null ? void 0 : t.rotulo, + placeholder: (r = e.opcoes) == null ? void 0 : r.placeholder, + rows: ((d = e.opcoes) == null ? void 0 : d.linhas) ?? 4, + counter: (l = e.opcoes) == null ? void 0 : l.limiteCaracteres, + maxlength: (c = e.opcoes) == null ? void 0 : c.limiteCaracteres, + clearable: !!((m = e.opcoes) != null && m.limpavel), + error: !!((w = e.opcoes) != null && w.erro), + "error-messages": (B = e.opcoes) == null ? void 0 : B.mensagensErro, + hint: (_ = e.opcoes) == null ? void 0 : _.dica, + "persistent-hint": !!((s = e.opcoes) != null && s.dicaPersistente), + density: ((E = e.opcoes) == null ? void 0 : E.densidade) ?? "comfortable", + variant: ((g = e.opcoes) == null ? void 0 : g.variante) ?? "outlined", + "auto-grow": "" + }, e.attrs, { + onFocus: a[1] || (a[1] = () => e.emit("focus")), + onBlur: a[2] || (a[2] = () => e.emit("blur")) + }), null, 16, ["modelValue", "label", "placeholder", "rows", "counter", "maxlength", "clearable", "error", "error-messages", "hint", "persistent-hint", "density", "variant"]); +} +const Dn = /* @__PURE__ */ z(Sn, [["render", kn]]), Mn = j({ + name: "EliEntradaSelecao", + components: { VSelect: Ia }, + inheritAttrs: !1, + props: { + value: { + type: [String, null], + default: void 0 + }, + opcoes: { + type: Object, + required: !0 + } + }, + emits: { + "update:value": (e) => !0, + input: (e) => !0, + change: (e) => !0, + focus: () => !0, + blur: () => !0 + }, + setup(e, { attrs: a, emit: o }) { + const n = F([]), i = F(!1), f = S({ + get: () => e.value, + set: (r) => { + o("update:value", r), o("input", r), o("change", r); + } + }); + async function t() { + i.value = !0; + try { + const r = await e.opcoes.itens(); + n.value = Array.isArray(r) ? r : []; + } finally { + i.value = !1; + } + } + return he( + () => e.opcoes.itens, + () => { + t(); + } + ), sa(() => { + t(); + }), { attrs: a, emit: o, localValue: f, opcoes: e.opcoes, itens: n, carregando: i }; + } +}); +function Bn(e, a, o, n, i, f) { + var t, r, d, l, c, m, w, B, _; + return u(), W(La, Ce({ + modelValue: e.localValue, + "onUpdate:modelValue": a[0] || (a[0] = (s) => e.localValue = s), + label: (t = e.opcoes) == null ? void 0 : t.rotulo, + placeholder: (r = e.opcoes) == null ? void 0 : r.placeholder, + items: e.itens, + "item-title": "rotulo", + "item-value": "chave", + loading: e.carregando, + disabled: e.carregando, + clearable: !!((d = e.opcoes) != null && d.limpavel), + error: !!((l = e.opcoes) != null && l.erro), + "error-messages": (c = e.opcoes) == null ? void 0 : c.mensagensErro, + hint: (m = e.opcoes) == null ? void 0 : m.dica, + "persistent-hint": !!((w = e.opcoes) != null && w.dicaPersistente), + density: ((B = e.opcoes) == null ? void 0 : B.densidade) ?? "comfortable", + variant: ((_ = e.opcoes) == null ? void 0 : _.variante) ?? "outlined" + }, e.attrs, { + onFocus: a[1] || (a[1] = () => e.emit("focus")), + onBlur: a[2] || (a[2] = () => e.emit("blur")) + }), null, 16, ["modelValue", "label", "placeholder", "items", "loading", "disabled", "clearable", "error", "error-messages", "hint", "persistent-hint", "density", "variant"]); +} +const Tn = /* @__PURE__ */ z(Mn, [["render", Bn]]); +function wn(e) { return e === "texto" || e === "numero" || e === "dataHora"; } -function rn(e) { +function Pn(e) { var o, n; const a = (n = (o = e == null ? void 0 : e.entrada) == null ? void 0 : o[1]) == null ? void 0 : n.rotulo; return String(a || ((e == null ? void 0 : e.coluna) ?? "Filtro")); } -const ln = U({ +const On = j({ name: "EliTabelaModalFiltroAvancado", props: { aberto: { type: Boolean, required: !0 }, @@ -2138,13 +2385,13 @@ const ln = U({ salvar: (e) => !0 }, setup(e, { emit: a }) { - const o = I([]), n = I(""), i = k(() => (e.filtrosBase ?? []).map((s) => String(s.coluna))), h = k(() => { - const s = new Set(o.value.map((C) => String(C.coluna))); - return (e.filtrosBase ?? []).filter((C) => !s.has(String(C.coluna))); + const o = F([]), n = F(""), i = S(() => (e.filtrosBase ?? []).map((s) => String(s.coluna))), f = S(() => { + const s = new Set(o.value.map((E) => String(E.coluna))); + return (e.filtrosBase ?? []).filter((E) => !s.has(String(E.coluna))); }); function t(s) { - const C = s == null ? void 0 : s[0]; - return C === "numero" ? va : C === "dataHora" ? pa : He; + const E = s == null ? void 0 : s[0]; + return E === "numero" ? ha : E === "dataHora" ? ga : Ye; } function r(s) { return (s == null ? void 0 : s[1]) ?? { rotulo: "" }; @@ -2153,47 +2400,47 @@ const ln = U({ return (s == null ? void 0 : s[0]) === "numero" ? null : ""; } function l() { - var $; - const s = e.filtrosBase ?? [], C = Array.isArray(e.modelo) ? e.modelo : []; - o.value = C.map((E) => { - const X = s.find((R) => String(R.coluna) === String(E.coluna)) ?? s[0], ye = (X == null ? void 0 : X.entrada) ?? E.entrada, oe = (X == null ? void 0 : X.coluna) ?? E.coluna, ne = String((X == null ? void 0 : X.operador) ?? "="), ve = E.valor ?? d(ye); + var g; + const s = e.filtrosBase ?? [], E = Array.isArray(e.modelo) ? e.modelo : []; + o.value = E.map((C) => { + const Z = s.find((U) => String(U.coluna) === String(C.coluna)) ?? s[0], le = (Z == null ? void 0 : Z.entrada) ?? C.entrada, Y = (Z == null ? void 0 : Z.coluna) ?? C.coluna, X = String((Z == null ? void 0 : Z.operador) ?? "="), ie = C.valor ?? d(le); return { - coluna: oe, - operador: ne, - entrada: ye, - valor: ve + coluna: Y, + operador: X, + entrada: le, + valor: ie }; }); - for (const E of o.value) - i.value.includes(String(E.coluna)) && (E.operador = String((($ = s.find((X) => String(X.coluna) === String(E.coluna))) == null ? void 0 : $.operador) ?? "="), E.entrada && !nn(E.entrada[0]) && (E.entrada = ["texto", { rotulo: "Valor" }])); + for (const C of o.value) + i.value.includes(String(C.coluna)) && (C.operador = String(((g = s.find((Z) => String(Z.coluna) === String(C.coluna))) == null ? void 0 : g.operador) ?? "="), C.entrada && !wn(C.entrada[0]) && (C.entrada = ["texto", { rotulo: "Valor" }])); } - $e( + he( () => [e.aberto, e.filtrosBase, e.modelo], () => { e.aberto && l(); }, { deep: !0, immediate: !0 } ); - function p() { + function c() { if (!n.value) return; - const s = (e.filtrosBase ?? []).find((C) => String(C.coluna) === String(n.value)); - s && (o.value.some((C) => String(C.coluna) === String(s.coluna)) || (o.value.push({ + const s = (e.filtrosBase ?? []).find((E) => String(E.coluna) === String(n.value)); + s && (o.value.some((E) => String(E.coluna) === String(s.coluna)) || (o.value.push({ coluna: s.coluna, entrada: s.entrada, operador: String(s.operador ?? "="), valor: d(s.entrada) }), n.value = "")); } - function y(s) { + function m(s) { o.value.splice(s, 1); } - function O() { + function w() { a("fechar"); } - function P() { + function B() { a("limpar"); } - function A() { + function _() { a( "salvar", o.value.map((s) => ({ @@ -2204,146 +2451,146 @@ const ln = U({ } return { linhas: o, - opcoesParaAdicionar: h, + opcoesParaAdicionar: f, colunaParaAdicionar: n, componenteEntrada: t, opcoesEntrada: r, - adicionar: p, - remover: y, + adicionar: c, + remover: m, // exibimos operador fixo só como texto - emitFechar: O, - emitSalvar: A, - emitLimpar: P, - rotuloDoFiltro: rn + emitFechar: w, + emitSalvar: _, + emitLimpar: B, + rotuloDoFiltro: Pn }; } -}), sn = { +}), Fn = { class: "eli-tabela-modal-filtro__modal", role: "dialog", "aria-modal": "true", "aria-label": "Filtro avançado" -}, un = { class: "eli-tabela-modal-filtro__header" }, cn = { class: "eli-tabela-modal-filtro__conteudo" }, dn = { +}, Vn = { class: "eli-tabela-modal-filtro__header" }, In = { class: "eli-tabela-modal-filtro__conteudo" }, Nn = { key: 0, class: "eli-tabela-modal-filtro__vazio" -}, fn = { +}, qn = { key: 1, class: "eli-tabela-modal-filtro__lista" -}, vn = { class: "eli-tabela-modal-filtro__entrada" }, pn = ["onClick"], mn = { class: "eli-tabela-modal-filtro__acoes" }, bn = ["disabled"], hn = ["value"], gn = ["disabled"], $n = { class: "eli-tabela-modal-filtro__footer" }; -function yn(e, a, o, n, i, h) { - return e.aberto ? (u(), g("div", { +}, Ln = { class: "eli-tabela-modal-filtro__entrada" }, jn = ["onClick"], zn = { class: "eli-tabela-modal-filtro__acoes" }, Un = ["disabled"], Hn = ["value"], Yn = ["disabled"], Rn = { class: "eli-tabela-modal-filtro__footer" }; +function Jn(e, a, o, n, i, f) { + return e.aberto ? (u(), y("div", { key: 0, class: "eli-tabela-modal-filtro__overlay", role: "presentation", onClick: a[6] || (a[6] = ue((...t) => e.emitFechar && e.emitFechar(...t), ["self"])) }, [ - b("div", sn, [ - b("header", un, [ - a[7] || (a[7] = b("h3", { class: "eli-tabela-modal-filtro__titulo" }, "Filtro avançado", -1)), - b("button", { + $("div", Fn, [ + $("header", Vn, [ + a[7] || (a[7] = $("h3", { class: "eli-tabela-modal-filtro__titulo" }, "Filtro avançado", -1)), + $("button", { type: "button", class: "eli-tabela-modal-filtro__fechar", "aria-label": "Fechar", onClick: a[0] || (a[0] = (...t) => e.emitFechar && e.emitFechar(...t)) }, " × ") ]), - b("div", cn, [ - e.filtrosBase.length ? (u(), g("div", fn, [ - (u(!0), g(le, null, fe(e.linhas, (t, r) => (u(), g("div", { + $("div", In, [ + e.filtrosBase.length ? (u(), y("div", qn, [ + (u(!0), y(re, null, fe(e.linhas, (t, r) => (u(), y("div", { key: String(t.coluna), class: "eli-tabela-modal-filtro__linha" }, [ - b("div", vn, [ - (u(), x(Be(e.componenteEntrada(t.entrada)), { + $("div", Ln, [ + (u(), W(Me(e.componenteEntrada(t.entrada)), { value: t.valor, "onUpdate:value": (d) => t.valor = d, opcoes: e.opcoesEntrada(t.entrada), density: "compact" }, null, 40, ["value", "onUpdate:value", "opcoes"])) ]), - b("button", { + $("button", { type: "button", class: "eli-tabela-modal-filtro__remover", title: "Remover", "aria-label": "Remover", onClick: (d) => e.remover(r) - }, " × ", 8, pn) + }, " × ", 8, jn) ]))), 128)) - ])) : (u(), g("div", dn, " Nenhum filtro configurado na tabela. ")), - b("div", mn, [ - ra(b("select", { + ])) : (u(), y("div", Nn, " Nenhum filtro configurado na tabela. ")), + $("div", zn, [ + ia($("select", { "onUpdate:modelValue": a[1] || (a[1] = (t) => e.colunaParaAdicionar = t), class: "eli-tabela-modal-filtro__select", disabled: !e.opcoesParaAdicionar.length }, [ - a[8] || (a[8] = b("option", { + a[8] || (a[8] = $("option", { disabled: "", value: "" }, "Selecione um filtro…", -1)), - (u(!0), g(le, null, fe(e.opcoesParaAdicionar, (t) => (u(), g("option", { + (u(!0), y(re, null, fe(e.opcoesParaAdicionar, (t) => (u(), y("option", { key: String(t.coluna), value: String(t.coluna) - }, j(e.rotuloDoFiltro(t)), 9, hn))), 128)) - ], 8, bn), [ - [Sa, e.colunaParaAdicionar] + }, L(e.rotuloDoFiltro(t)), 9, Hn))), 128)) + ], 8, Un), [ + [Ba, e.colunaParaAdicionar] ]), - b("button", { + $("button", { type: "button", class: "eli-tabela-modal-filtro__botao", onClick: a[2] || (a[2] = (...t) => e.adicionar && e.adicionar(...t)), disabled: !e.colunaParaAdicionar - }, " Adicionar ", 8, gn) + }, " Adicionar ", 8, Yn) ]) ]), - b("footer", $n, [ - b("button", { + $("footer", Rn, [ + $("button", { type: "button", class: "eli-tabela-modal-filtro__botao eli-tabela-modal-filtro__botao--sec", onClick: a[3] || (a[3] = (...t) => e.emitLimpar && e.emitLimpar(...t)) }, " Limpar "), - b("button", { + $("button", { type: "button", class: "eli-tabela-modal-filtro__botao eli-tabela-modal-filtro__botao--sec", onClick: a[4] || (a[4] = (...t) => e.emitFechar && e.emitFechar(...t)) }, " Cancelar "), - b("button", { + $("button", { type: "button", class: "eli-tabela-modal-filtro__botao eli-tabela-modal-filtro__botao--prim", onClick: a[5] || (a[5] = (...t) => e.emitSalvar && e.emitSalvar(...t)) }, " Aplicar ") ]) ]) - ])) : Q("", !0); + ])) : ee("", !0); } -const _n = /* @__PURE__ */ H(ln, [["render", yn], ["__scopeId", "data-v-ae32fe4c"]]), Cn = "eli:tabela"; -function ma(e) { - return `${Cn}:${e}:colunas`; +const Wn = /* @__PURE__ */ z(On, [["render", Jn], ["__scopeId", "data-v-ae32fe4c"]]), Zn = "eli:tabela"; +function $a(e) { + return `${Zn}:${e}:colunas`; } -function ba(e) { +function ya(e) { if (!e || typeof e != "object") return { visiveis: [], invisiveis: [] }; const a = e, o = Array.isArray(a.visiveis) ? a.visiveis.filter((i) => typeof i == "string") : [], n = Array.isArray(a.invisiveis) ? a.invisiveis.filter((i) => typeof i == "string") : []; return { visiveis: o, invisiveis: n }; } -function oa(e) { +function ra(e) { try { - const a = window.localStorage.getItem(ma(e)); - return a ? ba(JSON.parse(a)) : { visiveis: [], invisiveis: [] }; + const a = window.localStorage.getItem($a(e)); + return a ? ya(JSON.parse(a)) : { visiveis: [], invisiveis: [] }; } catch { return { visiveis: [], invisiveis: [] }; } } -function En(e, a) { +function Xn(e, a) { try { - window.localStorage.setItem(ma(e), JSON.stringify(ba(a))); + window.localStorage.setItem($a(e), JSON.stringify(ya(a))); } catch { } } -function Ye(e) { +function Re(e) { return `eli_tabela:${e}:filtro_avancado`; } -function na(e) { +function la(e) { try { - const a = localStorage.getItem(Ye(e)); + const a = localStorage.getItem(Re(e)); if (!a) return []; const o = JSON.parse(a); return Array.isArray(o) ? o : []; @@ -2351,31 +2598,31 @@ function na(e) { return []; } } -function An(e, a) { +function Gn(e, a) { try { - localStorage.setItem(Ye(e), JSON.stringify(a ?? [])); + localStorage.setItem(Re(e), JSON.stringify(a ?? [])); } catch { } } -function Sn(e) { +function Kn(e) { try { - localStorage.removeItem(Ye(e)); + localStorage.removeItem(Re(e)); } catch { } } -const kn = U({ +const Qn = j({ name: "EliTabela", inheritAttrs: !1, components: { - EliTabelaCabecalho: ht, - EliTabelaEstados: At, - EliTabelaDebug: Mt, - EliTabelaHead: Vt, - EliTabelaBody: po, - EliTabelaMenuAcoes: yo, - EliTabelaPaginacao: Mo, - EliTabelaModalColunas: zo, - EliTabelaModalFiltroAvancado: _n + EliTabelaCabecalho: kt, + EliTabelaEstados: Ot, + EliTabelaDebug: Nt, + EliTabelaHead: Wt, + EliTabelaBody: qo, + EliTabelaMenuAcoes: Yo, + EliTabelaPaginacao: Qo, + EliTabelaModalColunas: fn, + EliTabelaModalFiltroAvancado: Wn }, props: { /** Configuração principal da tabela (colunas, consulta e ações) */ @@ -2385,223 +2632,223 @@ const kn = U({ } }, setup(e) { - const o = I(!1), n = I(null), i = I([]), h = I(0), t = I([]), r = I(null), d = I(null), l = I({ top: 0, left: 0 }), p = I(""), y = I(1), O = I(null), P = I("asc"), A = I(!1), s = I(na(e.tabela.nome)); - function C() { - A.value = !0; - } - function $() { - A.value = !1; - } + const o = F(!1), n = F(null), i = F([]), f = F(0), t = F([]), r = F(null), d = F(null), l = F({ top: 0, left: 0 }), c = F(""), m = F(1), w = F(null), B = F("asc"), _ = F(!1), s = F(la(e.tabela.nome)); function E() { - s.value = [], Sn(e.tabela.nome), A.value = !1, y.value !== 1 && (y.value = 1); + _.value = !0; } - function X(v) { - s.value = v ?? [], An(e.tabela.nome, v ?? []), A.value = !1, y.value !== 1 && (y.value = 1); + function g() { + _.value = !1; } - const ye = k(() => { - const v = e.tabela.filtroAvancado ?? []; - return (s.value ?? []).filter((S) => S && S.coluna !== void 0).map((S) => { - const w = v.find((F) => String(F.coluna) === String(S.coluna)); - return w ? { - coluna: String(w.coluna), - operador: w.operador, - valor: S.valor + function C() { + s.value = [], Kn(e.tabela.nome), _.value = !1, m.value !== 1 && (m.value = 1); + } + function Z(b) { + s.value = b ?? [], Gn(e.tabela.nome, b ?? []), _.value = !1, m.value !== 1 && (m.value = 1); + } + const le = S(() => { + const b = e.tabela.filtroAvancado ?? []; + return (s.value ?? []).filter((k) => k && k.coluna !== void 0).map((k) => { + const P = b.find((V) => String(V.coluna) === String(k.coluna)); + return P ? { + coluna: String(P.coluna), + operador: P.operador, + valor: k.valor } : null; }).filter(Boolean); - }), oe = k(() => e.tabela), ne = k(() => !!e.tabela.mostrarCaixaDeBusca), ve = k(() => e.tabela.acoesTabela ?? []), R = k(() => ve.value.length > 0), pe = I(!1), N = I( - oa(e.tabela.nome) - ), T = I({}), Ce = k(() => e.tabela.colunas.map((v) => v.rotulo)), Te = k(() => { - var ie, se; - const v = e.tabela.colunas, w = (((ie = N.value.visiveis) == null ? void 0 : ie.length) ?? 0) > 0 || (((se = N.value.invisiveis) == null ? void 0 : se.length) ?? 0) > 0 ? N.value.invisiveis ?? [] : v.filter((L) => L.visivel === !1).map((L) => L.rotulo), F = new Set(w), K = v.filter((L) => F.has(L.rotulo)), ae = w, de = /* @__PURE__ */ new Map(); - for (const L of K) - de.has(L.rotulo) || de.set(L.rotulo, L); - const re = []; - for (const L of ae) { - const me = de.get(L); - me && re.push(me); + }), Y = S(() => e.tabela), X = S(() => !!e.tabela.mostrarCaixaDeBusca), ie = S(() => e.tabela.acoesTabela ?? []), U = S(() => ie.value.length > 0), me = F(!1), I = F( + ra(e.tabela.nome) + ), O = F({}), Ae = S(() => e.tabela.colunas.map((b) => b.rotulo)), Pe = S(() => { + var ce, de; + const b = e.tabela.colunas, P = (((ce = I.value.visiveis) == null ? void 0 : ce.length) ?? 0) > 0 || (((de = I.value.invisiveis) == null ? void 0 : de.length) ?? 0) > 0 ? I.value.invisiveis ?? [] : b.filter((H) => H.visivel === !1).map((H) => H.rotulo), V = new Set(P), ae = b.filter((H) => V.has(H.rotulo)), ne = P, ve = /* @__PURE__ */ new Map(); + for (const H of ae) + ve.has(H.rotulo) || ve.set(H.rotulo, H); + const se = []; + for (const H of ne) { + const be = ve.get(H); + be && se.push(be); } - for (const L of K) - re.includes(L) || re.push(L); - return re; - }), D = k(() => Te.value.length > 0), m = k(() => { - var L, me; - const v = e.tabela.colunas, S = Ce.value, w = (((L = N.value.visiveis) == null ? void 0 : L.length) ?? 0) > 0 || (((me = N.value.invisiveis) == null ? void 0 : me.length) ?? 0) > 0, F = w ? N.value.invisiveis ?? [] : e.tabela.colunas.filter((Y) => Y.visivel === !1).map((Y) => Y.rotulo), K = new Set(F), ae = S.filter((Y) => !K.has(Y)), de = new Set(ae), re = w ? N.value.visiveis ?? [] : [], ie = []; - for (const Y of re) - de.has(Y) && ie.push(Y); - for (const Y of ae) - ie.includes(Y) || ie.push(Y); - const se = /* @__PURE__ */ new Map(); - for (const Y of v) - se.has(Y.rotulo) || se.set(Y.rotulo, Y); - return ie.map((Y) => se.get(Y)).filter(Boolean); + for (const H of ae) + se.includes(H) || se.push(H); + return se; + }), D = S(() => Pe.value.length > 0), h = S(() => { + var H, be; + const b = e.tabela.colunas, k = Ae.value, P = (((H = I.value.visiveis) == null ? void 0 : H.length) ?? 0) > 0 || (((be = I.value.invisiveis) == null ? void 0 : be.length) ?? 0) > 0, V = P ? I.value.invisiveis ?? [] : e.tabela.colunas.filter((J) => J.visivel === !1).map((J) => J.rotulo), ae = new Set(V), ne = k.filter((J) => !ae.has(J)), ve = new Set(ne), se = P ? I.value.visiveis ?? [] : [], ce = []; + for (const J of se) + ve.has(J) && ce.push(J); + for (const J of ne) + ce.includes(J) || ce.push(J); + const de = /* @__PURE__ */ new Map(); + for (const J of b) + de.has(J.rotulo) || de.set(J.rotulo, J); + return ce.map((J) => de.get(J)).filter(Boolean); }); - function c() { - pe.value = !0; + function p() { + me.value = !0; } - function _() { - pe.value = !1; + function A() { + me.value = !1; } - function f(v) { - N.value = v, En(e.tabela.nome, v), pe.value = !1, T.value = {}; + function v(b) { + I.value = b, Xn(e.tabela.nome, b), me.value = !1, O.value = {}; } - function B(v) { - const S = !!T.value[v]; - T.value = { - ...T.value, - [v]: !S + function T(b) { + const k = !!O.value[b]; + O.value = { + ...O.value, + [b]: !k }; } - const M = k(() => { - const v = e.tabela.registros_por_consulta; - return typeof v == "number" && v > 0 ? Math.floor(v) : 10; + const M = S(() => { + const b = e.tabela.registros_por_consulta; + return typeof b == "number" && b > 0 ? Math.floor(b) : 10; }); - function q(v) { - const S = (p.value ?? "").trim().toLowerCase(); - return S ? v.filter((w) => JSON.stringify(w).toLowerCase().includes(S)) : v; + function N(b) { + const k = (c.value ?? "").trim().toLowerCase(); + return k ? b.filter((P) => JSON.stringify(P).toLowerCase().includes(k)) : b; } - function z(v, S, w) { - switch (v) { + function R(b, k, P) { + switch (b) { case "=": - return S == w; + return k == P; case "!=": - return S != w; + return k != P; case ">": - return Number(S) > Number(w); + return Number(k) > Number(P); case ">=": - return Number(S) >= Number(w); + return Number(k) >= Number(P); case "<": - return Number(S) < Number(w); + return Number(k) < Number(P); case "<=": - return Number(S) <= Number(w); + return Number(k) <= Number(P); case "like": { - const F = String(S ?? "").toLowerCase(), K = String(w ?? "").toLowerCase(); - return F.includes(K); + const V = String(k ?? "").toLowerCase(), ae = String(P ?? "").toLowerCase(); + return V.includes(ae); } case "in": - return (Array.isArray(w) ? w : String(w ?? "").split(",").map((K) => K.trim()).filter(Boolean)).includes(String(S)); + return (Array.isArray(P) ? P : String(P ?? "").split(",").map((ae) => ae.trim()).filter(Boolean)).includes(String(k)); case "isNull": - return S == null || S === ""; + return k == null || k === ""; default: return !0; } } - function J(v) { - const S = ye.value; - return S.length ? v.filter((w) => S.every((F) => { - const K = w == null ? void 0 : w[F.coluna]; - return z(String(F.operador), K, F.valor); - })) : v; + function G(b) { + const k = le.value; + return k.length ? b.filter((P) => k.every((V) => { + const ae = P == null ? void 0 : P[V.coluna]; + return R(String(V.operador), ae, V.valor); + })) : b; } - const G = k(() => { - const v = i.value ?? []; - return J(q(v)); - }), ee = k(() => G.value.length), be = k(() => { - const v = M.value; - if (!v || v <= 0) return 1; - const S = ee.value; - return S ? Math.max(1, Math.ceil(S / v)) : 1; - }), he = k(() => { - const v = Math.max(1, M.value), S = (y.value - 1) * v; - return G.value.slice(S, S + v); - }), Ee = k(() => (e.tabela.acoesLinha ?? []).length > 0), ge = k(() => (e.tabela.filtroAvancado ?? []).length > 0); - let W = 0; - function ce(v) { - var re, ie, se, L, me, Y; - const S = v.getBoundingClientRect(), w = 8, F = ((se = (ie = (re = d.value) == null ? void 0 : re.menuEl) == null ? void 0 : ie.value) == null ? void 0 : se.offsetHeight) ?? 0, K = ((Y = (me = (L = d.value) == null ? void 0 : L.menuEl) == null ? void 0 : me.value) == null ? void 0 : Y.offsetWidth) ?? 180; - let ae = S.bottom + w; - const de = S.right - K; - F && ae + F > window.innerHeight - w && (ae = S.top - w - F), l.value = { - top: Math.max(w, Math.round(ae)), - left: Math.max(w, Math.round(de)) + const x = S(() => { + const b = i.value ?? []; + return G(N(b)); + }), oe = S(() => x.value.length), ge = S(() => { + const b = M.value; + if (!b || b <= 0) return 1; + const k = oe.value; + return k ? Math.max(1, Math.ceil(k / b)) : 1; + }), $e = S(() => { + const b = Math.max(1, M.value), k = (m.value - 1) * b; + return x.value.slice(k, k + b); + }), Se = S(() => (e.tabela.acoesLinha ?? []).length > 0), ye = S(() => (e.tabela.filtroAvancado ?? []).length > 0); + let K = 0; + function pe(b) { + var se, ce, de, H, be, J; + const k = b.getBoundingClientRect(), P = 8, V = ((de = (ce = (se = d.value) == null ? void 0 : se.menuEl) == null ? void 0 : ce.value) == null ? void 0 : de.offsetHeight) ?? 0, ae = ((J = (be = (H = d.value) == null ? void 0 : H.menuEl) == null ? void 0 : be.value) == null ? void 0 : J.offsetWidth) ?? 180; + let ne = k.bottom + P; + const ve = k.right - ae; + V && ne + V > window.innerHeight - P && (ne = k.top - P - V), l.value = { + top: Math.max(P, Math.round(ne)), + left: Math.max(P, Math.round(ve)) }; } - function _e(v) { - var w, F; + function _e(b) { + var P, V; if (r.value === null) return; - const S = v.target; - (F = (w = d.value) == null ? void 0 : w.menuEl) != null && F.value && d.value.menuEl.value.contains(S) || (r.value = null); + const k = b.target; + (V = (P = d.value) == null ? void 0 : P.menuEl) != null && V.value && d.value.menuEl.value.contains(k) || (r.value = null); } - function ke(v) { - if (v) { - if (O.value === v) { - P.value = P.value === "asc" ? "desc" : "asc", Ae(); + function Be(b) { + if (b) { + if (w.value === b) { + B.value = B.value === "asc" ? "desc" : "asc", ke(); return; } - O.value = v, P.value = "asc", y.value !== 1 ? y.value = 1 : Ae(); + w.value = b, B.value = "asc", m.value !== 1 ? m.value = 1 : ke(); } } - function ha(v) { - p.value !== v && (p.value = v, y.value !== 1 ? y.value = 1 : Ae()); + function _a(b) { + c.value !== b && (c.value = b, m.value !== 1 ? m.value = 1 : ke()); } - function ga(v) { - const S = Math.min(Math.max(1, v), be.value); - S !== y.value && (y.value = S); + function Ea(b) { + const k = Math.min(Math.max(1, b), ge.value); + k !== m.value && (m.value = k); } - function Re(v) { - const S = e.tabela.acoesLinha ?? [], w = t.value[v] ?? []; - return S.map((F, K) => { - const ae = F.exibir === void 0 ? !0 : typeof F.exibir == "boolean" ? F.exibir : !1; + function Je(b) { + const k = e.tabela.acoesLinha ?? [], P = t.value[b] ?? []; + return k.map((V, ae) => { + const ne = V.exibir === void 0 ? !0 : typeof V.exibir == "boolean" ? V.exibir : !1; return { - acao: F, - indice: K, - visivel: w[K] ?? ae + acao: V, + indice: ae, + visivel: P[ae] ?? ne }; - }).filter((F) => F.visivel); + }).filter((V) => V.visivel); } - function Je(v) { - return Re(v).length > 0; + function We(b) { + return Je(b).length > 0; } - function $a(v, S) { - if (!Je(v)) return; - if (r.value === v) { + function Ca(b, k) { + if (!We(b)) return; + if (r.value === b) { r.value = null; return; } - r.value = v; - const w = (S == null ? void 0 : S.currentTarget) ?? null; - w && (ce(w), requestAnimationFrame(() => ce(w))); + r.value = b; + const P = (k == null ? void 0 : k.currentTarget) ?? null; + P && (pe(P), requestAnimationFrame(() => pe(P))); } - async function Ae() { - var K; - const v = ++W; - o.value = !0, n.value = null, t.value = [], r.value = null, T.value = {}; - const S = Math.max(1, M.value), F = { + async function ke() { + var ae; + const b = ++K; + o.value = !0, n.value = null, t.value = [], r.value = null, O.value = {}; + const k = Math.max(1, M.value), V = { offSet: 0, limit: 999999 }; - O.value && (F.coluna_ordem = O.value, F.direcao_ordem = P.value); + w.value && (V.coluna_ordem = w.value, V.direcao_ordem = B.value); try { - const ae = e.tabela, de = await ae.consulta(F); - if (v !== W) return; - if (de.cod !== da.sucesso) { - i.value = [], h.value = 0, n.value = de.mensagem; + const ne = e.tabela, ve = await ne.consulta(V); + if (b !== K) return; + if (ve.cod !== va.sucesso) { + i.value = [], f.value = 0, n.value = ve.mensagem; return; } - const re = ((K = de.valor) == null ? void 0 : K.valores) ?? [], ie = re.length; - i.value = re, h.value = ie; - const se = Math.max(1, Math.ceil((ee.value || 0) / S)); - if (y.value > se) { - y.value = se; + const se = ((ae = ve.valor) == null ? void 0 : ae.valores) ?? [], ce = se.length; + i.value = se, f.value = ce; + const de = Math.max(1, Math.ceil((oe.value || 0) / k)); + if (m.value > de) { + m.value = de; return; } - const L = ae.acoesLinha ?? []; - if (!L.length) { + const H = ne.acoesLinha ?? []; + if (!H.length) { t.value = []; return; } - const me = re.map( - () => L.map((Pe) => Pe.exibir === void 0 ? !0 : typeof Pe.exibir == "boolean" ? Pe.exibir : !1) + const be = se.map( + () => H.map((Oe) => Oe.exibir === void 0 ? !0 : typeof Oe.exibir == "boolean" ? Oe.exibir : !1) ); - t.value = me; - const Y = await Promise.all( - re.map( - async (Pe) => Promise.all( - L.map(async (Fe) => { - if (Fe.exibir === void 0) return !0; - if (typeof Fe.exibir == "boolean") return Fe.exibir; + t.value = be; + const J = await Promise.all( + se.map( + async (Oe) => Promise.all( + H.map(async (Ve) => { + if (Ve.exibir === void 0) return !0; + if (typeof Ve.exibir == "boolean") return Ve.exibir; try { - const ya = Fe.exibir(Pe); - return !!await Promise.resolve(ya); + const Aa = Ve.exibir(Oe); + return !!await Promise.resolve(Aa); } catch { return !1; } @@ -2609,103 +2856,103 @@ const kn = U({ ) ) ); - v === W && (t.value = Y); - } catch (ae) { - if (v !== W) return; - i.value = [], h.value = 0, n.value = ae instanceof Error ? ae.message : "Erro ao carregar dados."; + b === K && (t.value = J); + } catch (ne) { + if (b !== K) return; + i.value = [], f.value = 0, n.value = ne instanceof Error ? ne.message : "Erro ao carregar dados."; } finally { - v === W && (o.value = !1); + b === K && (o.value = !1); } } - return ka(() => { - document.addEventListener("click", _e), Ae(); - }), Da(() => { + return sa(() => { + document.addEventListener("click", _e), ke(); + }), Ta(() => { document.removeEventListener("click", _e); - }), $e( + }), he( () => e.tabela.mostrarCaixaDeBusca, - (v) => { - !v && p.value && (p.value = "", y.value !== 1 ? y.value = 1 : Ae()); + (b) => { + !b && c.value && (c.value = "", m.value !== 1 ? m.value = 1 : ke()); } - ), $e(y, (v, S) => { - }), $e( + ), he(m, (b, k) => { + }), he( () => e.tabela, () => { - r.value = null, O.value = null, P.value = "asc", p.value = "", pe.value = !1, A.value = !1, N.value = oa(e.tabela.nome), s.value = na(e.tabela.nome), T.value = {}, y.value !== 1 ? y.value = 1 : Ae(); + r.value = null, w.value = null, B.value = "asc", c.value = "", me.value = !1, _.value = !1, I.value = ra(e.tabela.nome), s.value = la(e.tabela.nome), O.value = {}, m.value !== 1 ? m.value = 1 : ke(); } - ), $e( + ), he( () => e.tabela.registros_por_consulta, () => { - y.value !== 1 ? y.value = 1 : Ae(); + m.value !== 1 ? m.value = 1 : ke(); } - ), $e(i, () => { - r.value = null, T.value = {}; + ), he(i, () => { + r.value = null, O.value = {}; }), { // state isDev: !1, - tabela: oe, + tabela: Y, carregando: o, erro: n, linhas: i, - linhasPaginadas: he, - quantidadeFiltrada: ee, - quantidade: h, + linhasPaginadas: $e, + quantidadeFiltrada: oe, + quantidade: f, menuAberto: r, - valorBusca: p, - paginaAtual: y, - colunaOrdenacao: O, - direcaoOrdenacao: P, - totalPaginas: be, + valorBusca: c, + paginaAtual: m, + colunaOrdenacao: w, + direcaoOrdenacao: B, + totalPaginas: ge, // computed - exibirBusca: ne, - exibirFiltroAvancado: ge, - acoesCabecalho: ve, - temAcoesCabecalho: R, - temAcoes: Ee, - colunasEfetivas: m, - rotulosColunas: Ce, - modalColunasAberto: pe, - configColunas: N, + exibirBusca: X, + exibirFiltroAvancado: ye, + acoesCabecalho: ie, + temAcoesCabecalho: U, + temAcoes: Se, + colunasEfetivas: h, + rotulosColunas: Ae, + modalColunasAberto: me, + configColunas: I, temColunasInvisiveis: D, - colunasInvisiveisEfetivas: Te, - linhasExpandidas: T, - abrirModalColunas: c, - abrirModalFiltro: C, - fecharModalColunas: _, - salvarModalColunas: f, - modalFiltroAberto: A, + colunasInvisiveisEfetivas: Pe, + linhasExpandidas: O, + abrirModalColunas: p, + abrirModalFiltro: E, + fecharModalColunas: A, + salvarModalColunas: v, + modalFiltroAberto: _, filtrosUi: s, - salvarFiltrosAvancados: X, - limparFiltrosAvancados: E, - fecharModalFiltro: $, - alternarLinhaExpandida: B, + salvarFiltrosAvancados: Z, + limparFiltrosAvancados: C, + fecharModalFiltro: g, + alternarLinhaExpandida: T, // actions - alternarOrdenacao: ke, - atualizarBusca: ha, - irParaPagina: ga, - acoesDisponiveisPorLinha: Re, - possuiAcoes: Je, - toggleMenu: $a, + alternarOrdenacao: Be, + atualizarBusca: _a, + irParaPagina: Ea, + acoesDisponiveisPorLinha: Je, + possuiAcoes: We, + toggleMenu: Ca, // popup menuPopup: d, menuPopupPos: l }; } -}), Dn = { class: "eli-tabela" }, Mn = { class: "eli-tabela__table" }; -function Bn(e, a, o, n, i, h) { - const t = Z("EliTabelaDebug"), r = Z("EliTabelaEstados"), d = Z("EliTabelaCabecalho"), l = Z("EliTabelaModalColunas"), p = Z("EliTabelaModalFiltroAvancado"), y = Z("EliTabelaHead"), O = Z("EliTabelaBody"), P = Z("EliTabelaMenuAcoes"), A = Z("EliTabelaPaginacao"); - return u(), g("div", Dn, [ - V(t, { +}), xn = { class: "eli-tabela" }, er = { class: "eli-tabela__table" }; +function ar(e, a, o, n, i, f) { + const t = Q("EliTabelaDebug"), r = Q("EliTabelaEstados"), d = Q("EliTabelaCabecalho"), l = Q("EliTabelaModalColunas"), c = Q("EliTabelaModalFiltroAvancado"), m = Q("EliTabelaHead"), w = Q("EliTabelaBody"), B = Q("EliTabelaMenuAcoes"), _ = Q("EliTabelaPaginacao"); + return u(), y("div", xn, [ + q(t, { isDev: e.isDev, menuAberto: e.menuAberto, menuPopupPos: e.menuPopupPos }, null, 8, ["isDev", "menuAberto", "menuPopupPos"]), - e.carregando || e.erro || !e.linhas.length ? (u(), x(r, { + e.carregando || e.erro || !e.linhas.length ? (u(), W(r, { key: 0, carregando: e.carregando, erro: e.erro, mensagemVazio: e.tabela.mensagemVazio - }, null, 8, ["carregando", "erro", "mensagemVazio"])) : (u(), g(le, { key: 1 }, [ - e.exibirBusca || e.temAcoesCabecalho ? (u(), x(d, { + }, null, 8, ["carregando", "erro", "mensagemVazio"])) : (u(), y(re, { key: 1 }, [ + e.exibirBusca || e.temAcoesCabecalho ? (u(), W(d, { key: 0, exibirBusca: e.exibirBusca, exibirBotaoFiltroAvancado: e.exibirFiltroAvancado, @@ -2714,8 +2961,8 @@ function Bn(e, a, o, n, i, h) { onBuscar: e.atualizarBusca, onColunas: e.abrirModalColunas, onFiltroAvancado: e.abrirModalFiltro - }, null, 8, ["exibirBusca", "exibirBotaoFiltroAvancado", "valorBusca", "acoesCabecalho", "onBuscar", "onColunas", "onFiltroAvancado"])) : Q("", !0), - V(l, { + }, null, 8, ["exibirBusca", "exibirBotaoFiltroAvancado", "valorBusca", "acoesCabecalho", "onBuscar", "onColunas", "onFiltroAvancado"])) : ee("", !0), + q(l, { aberto: e.modalColunasAberto, rotulosColunas: e.rotulosColunas, configInicial: e.configColunas, @@ -2723,7 +2970,7 @@ function Bn(e, a, o, n, i, h) { onFechar: e.fecharModalColunas, onSalvar: e.salvarModalColunas }, null, 8, ["aberto", "rotulosColunas", "configInicial", "colunas", "onFechar", "onSalvar"]), - V(p, { + q(c, { aberto: e.modalFiltroAberto, filtrosBase: e.tabela.filtroAvancado ?? [], modelo: e.filtrosUi, @@ -2731,8 +2978,8 @@ function Bn(e, a, o, n, i, h) { onLimpar: e.limparFiltrosAvancados, onSalvar: e.salvarFiltrosAvancados }, null, 8, ["aberto", "filtrosBase", "modelo", "onFechar", "onLimpar", "onSalvar"]), - b("table", Mn, [ - V(y, { + $("table", er, [ + q(m, { colunas: e.colunasEfetivas, temAcoes: e.temAcoes, temColunasInvisiveis: e.temColunasInvisiveis, @@ -2740,7 +2987,7 @@ function Bn(e, a, o, n, i, h) { direcaoOrdenacao: e.direcaoOrdenacao, onAlternarOrdenacao: e.alternarOrdenacao }, null, 8, ["colunas", "temAcoes", "temColunasInvisiveis", "colunaOrdenacao", "direcaoOrdenacao", "onAlternarOrdenacao"]), - V(O, { + q(w, { colunas: e.colunasEfetivas, colunasInvisiveis: e.colunasInvisiveisEfetivas, temColunasInvisiveis: e.temColunasInvisiveis, @@ -2753,39 +3000,41 @@ function Bn(e, a, o, n, i, h) { alternarLinhaExpandida: e.alternarLinhaExpandida }, null, 8, ["colunas", "colunasInvisiveis", "temColunasInvisiveis", "linhasExpandidas", "linhas", "temAcoes", "menuAberto", "possuiAcoes", "toggleMenu", "alternarLinhaExpandida"]) ]), - V(P, { + q(B, { ref: "menuPopup", menuAberto: e.menuAberto, posicao: e.menuPopupPos, acoes: e.menuAberto === null ? [] : e.acoesDisponiveisPorLinha(e.menuAberto), linha: e.menuAberto === null ? null : e.linhasPaginadas[e.menuAberto], - onExecutar: a[0] || (a[0] = ({ acao: s, linha: C }) => { - e.menuAberto = null, s.acao(C); + onExecutar: a[0] || (a[0] = ({ acao: s, linha: E }) => { + e.menuAberto = null, s.acao(E); }) }, null, 8, ["menuAberto", "posicao", "acoes", "linha"]), - e.totalPaginas > 1 && e.quantidadeFiltrada > 0 ? (u(), x(A, { + e.totalPaginas > 1 && e.quantidadeFiltrada > 0 ? (u(), W(_, { key: 1, pagina: e.paginaAtual, totalPaginas: e.totalPaginas, maximoBotoes: e.tabela.maximo_botoes_paginacao, onAlterar: e.irParaPagina - }, null, 8, ["pagina", "totalPaginas", "maximoBotoes", "onAlterar"])) : Q("", !0) + }, null, 8, ["pagina", "totalPaginas", "maximoBotoes", "onAlterar"])) : ee("", !0) ], 64)) ]); } -const wn = /* @__PURE__ */ H(kn, [["render", Bn]]), qn = { +const tr = /* @__PURE__ */ z(Qn, [["render", ar]]), pr = { install(e) { - e.component("EliOlaMundo", Ja), e.component("EliBotao", ca), e.component("EliBadge", Ue), e.component("EliCartao", Ka), e.component("EliTabela", wn), e.component("EliEntradaTexto", He), e.component("EliEntradaNumero", va), e.component("EliEntradaDataHora", pa); + e.component("EliOlaMundo", at), e.component("EliBotao", pa), e.component("EliBadge", He), e.component("EliCartao", lt), e.component("EliTabela", tr), e.component("EliEntradaTexto", Ye), e.component("EliEntradaNumero", ha), e.component("EliEntradaDataHora", ga), e.component("EliEntradaParagrafo", Dn), e.component("EliEntradaSelecao", Tn); } }; export { - Ue as EliBadge, - ca as EliBotao, - Ka as EliCartao, - pa as EliEntradaDataHora, - va as EliEntradaNumero, - He as EliEntradaTexto, - Ja as EliOlaMundo, - wn as EliTabela, - qn as default + He as EliBadge, + pa as EliBotao, + lt as EliCartao, + ga as EliEntradaDataHora, + ha as EliEntradaNumero, + Dn as EliEntradaParagrafo, + Tn as EliEntradaSelecao, + Ye as EliEntradaTexto, + at as EliOlaMundo, + tr as EliTabela, + pr as default }; diff --git a/dist/eli-vue.umd.js b/dist/eli-vue.umd.js index e4aafe4..b5b5577 100644 --- a/dist/eli-vue.umd.js +++ b/dist/eli-vue.umd.js @@ -1,76 +1,76 @@ -(function(L,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("vuetify/components/VBtn"),require("vuetify/components/VBadge"),require("vuetify/components/VTextField"),require("vuetify/components/VCard"),require("vuetify/components/VGrid")):typeof define=="function"&&define.amd?define(["exports","vue","vuetify/components/VBtn","vuetify/components/VBadge","vuetify/components/VTextField","vuetify/components/VCard","vuetify/components/VGrid"],t):(L=typeof globalThis<"u"?globalThis:L||self,t(L.eli_vue={},L.Vue,L.VBtn,L.VBadge,L.VTextField,L.VCard,L.VGrid))})(this,(function(L,t,Ge,Xe,_e,le,Ke){"use strict";const Qe=t.defineComponent({name:"EliBotao",inheritAttrs:!1,props:{color:{type:String,default:"primary"},variant:{type:String,default:"elevated"},size:{type:String,default:"default"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}}}),F=(e,a)=>{const n=e.__vccOpts||e;for(const[r,s]of a)n[r]=s;return n};function xe(e,a,n,r,s,h){return t.openBlock(),t.createBlock(Ge.VBtn,t.mergeProps({color:e.color,variant:e.variant,size:e.size,disabled:e.disabled,loading:e.loading},e.$attrs,{class:"eli-botao text-none pt-1"}),{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},16,["color","variant","size","disabled","loading"])}const Be=F(Qe,[["render",xe]]),Ne={suave:"4px",pill:"10px"},et=t.defineComponent({name:"EliBadge",inheritAttrs:!1,props:{color:{type:String,default:"primary"},location:{type:String,default:"top right"},offsetX:{type:String,default:"0"},offsetY:{type:String,default:"0"},dot:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},badge:{type:[String,Number],default:void 0},radius:{type:String,default:"suave"}},setup(e){const a=t.computed(()=>e.radius in Ne?Ne[e.radius]:e.radius),n=t.computed(()=>e.dot||e.badge!==void 0?e.visible:!1),r=t.computed(()=>({"--eli-badge-radius":a.value}));return{showBadge:n,badgeStyle:r}}});function tt(e,a,n,r,s,h){return e.showBadge?(t.openBlock(),t.createBlock(Xe.VBadge,t.mergeProps({key:0,color:e.color},e.$attrs,{location:e.location,"offset-x":e.offsetX,"offset-y":e.offsetY,dot:e.dot,content:e.badge,style:e.badgeStyle,class:"eli-badge"}),{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default",{},void 0,!0)]),_:3},16,["color","location","offset-x","offset-y","dot","content","style"])):t.renderSlot(e.$slots,"default",{key:1},void 0,!0)}const ge=F(et,[["render",tt],["__scopeId","data-v-371c8db4"]]);function at(e){return e.replace(/\D+/g,"")}function ot(e){const a=at(e);return a.length<=11?a.replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d{1,2})$/,"$1-$2").slice(0,14):a.replace(/^(\d{2})(\d)/,"$1.$2").replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3").replace(/\.(\d{3})(\d)/,".$1/$2").replace(/(\d{4})(\d)/,"$1-$2").slice(0,18)}function nt(e){return e.replace(/\D+/g,"")}function rt(e){const a=nt(e);return a?a.length<=10?a.replace(/^(\d{2})(\d)/,"($1) $2").replace(/(\d{4})(\d)/,"$1-$2").slice(0,14):a.replace(/^(\d{2})(\d)/,"($1) $2").replace(/(\d{5})(\d)/,"$1-$2").slice(0,15):""}function lt(e){return e.replace(/\D+/g,"")}function it(e){const a=lt(e);return a?a.replace(/^(\d{5})(\d)/,"$1-$2").slice(0,9):""}const st=t.defineComponent({name:"EliEntradaTexto",inheritAttrs:!1,props:{value:{type:[String,null],default:void 0},opcoes:{type:Object,required:!0}},emits:{"update:value":e=>!0,input:e=>!0,change:e=>!0,focus:()=>!0,blur:()=>!0},setup(e,{attrs:a,emit:n}){const r=t.computed(()=>{var i;return((i=e.opcoes)==null?void 0:i.formato)??"texto"}),s=t.computed({get:()=>e.value,set:i=>{n("update:value",i),n("input",i),n("change",i)}}),h=t.computed(()=>r.value==="email"?"email":r.value==="url"?"url":"text"),o=t.computed(()=>{if(r.value==="telefone")return"tel";if(r.value==="cpfCnpj"||r.value==="cep")return"numeric"});function l(i){switch(r.value){case"telefone":return rt(i);case"cpfCnpj":return ot(i);case"cep":return it(i);default:return i}}function u(i){const f=i.target,y=l(f.value);f.value=y,s.value=y}return{attrs:a,emit:n,localValue:s,inputHtmlType:h,inputMode:o,onInput:u}}});function ct(e,a,n,r,s,h){var o,l,u,i;return t.openBlock(),t.createBlock(_e.VTextField,t.mergeProps({modelValue:e.localValue,"onUpdate:modelValue":a[0]||(a[0]=f=>e.localValue=f),type:e.inputHtmlType,inputmode:e.inputMode,label:(o=e.opcoes)==null?void 0:o.rotulo,placeholder:(l=e.opcoes)==null?void 0:l.placeholder,counter:(u=e.opcoes)==null?void 0:u.limiteCaracteres,maxlength:(i=e.opcoes)==null?void 0:i.limiteCaracteres},e.attrs,{onFocus:a[1]||(a[1]=()=>e.emit("focus")),onBlur:a[2]||(a[2]=()=>e.emit("blur")),onInput:e.onInput}),null,16,["modelValue","type","inputmode","label","placeholder","counter","maxlength","onInput"])}const ye=F(st,[["render",ct]]),dt=t.defineComponent({name:"EliOlaMundo",components:{EliBotao:Be,EliBadge:ge,EliEntradaTexto:ye},setup(){const e=t.ref(""),a=t.ref(""),n=t.ref(""),r=t.ref(""),s=t.ref("");return{nome:e,email:r,documento:s,telefone:n,cep:a}}}),ut={class:"grid-example"};function mt(e,a,n,r,s,h){const o=t.resolveComponent("EliBadge"),l=t.resolveComponent("EliEntradaTexto"),u=t.resolveComponent("EliBotao");return t.openBlock(),t.createBlock(Ke.VContainer,null,{default:t.withCtx(()=>[t.createVNode(le.VCard,{class:"mx-auto",max_width:"400"},{default:t.withCtx(()=>[t.createVNode(le.VCardTitle,null,{default:t.withCtx(()=>[t.createVNode(o,{badge:"Novo","offset-x":"-15",location:"right center"},{default:t.withCtx(()=>[...a[5]||(a[5]=[t.createTextVNode(" Olá Mundo! ",-1)])]),_:1})]),_:1}),t.createVNode(le.VCardText,null,{default:t.withCtx(()=>[a[6]||(a[6]=t.createTextVNode(" Este é um componente de exemplo integrado com Vuetify. ",-1)),t.createElementVNode("div",ut,[t.createVNode(l,{value:e.nome,"onUpdate:value":a[0]||(a[0]=i=>e.nome=i),opcoes:{rotulo:"Nome",placeholder:"Digite o nome"},density:"compact"},null,8,["value"]),t.createVNode(l,{value:e.telefone,"onUpdate:value":a[1]||(a[1]=i=>e.telefone=i),opcoes:{rotulo:"Telefone",formato:"telefone"}},null,8,["value"]),t.createVNode(l,{value:e.cep,"onUpdate:value":a[2]||(a[2]=i=>e.cep=i),opcoes:{rotulo:"CEP",placeholder:"00000-000",formato:"cep"}},null,8,["value"]),t.createVNode(l,{value:e.documento,"onUpdate:value":a[3]||(a[3]=i=>e.documento=i),opcoes:{rotulo:"CPF / CNPJ",formato:"cpfCnpj"}},null,8,["value"]),t.createVNode(l,{value:e.email,"onUpdate:value":a[4]||(a[4]=i=>e.email=i),opcoes:{rotulo:"Email",placeholder:"email@exemplo.com",formato:"email"}},null,8,["value"])])]),_:1}),t.createVNode(le.VCardActions,null,{default:t.withCtx(()=>[t.createVNode(u,{color:"primary",variant:"elevated",block:""},{default:t.withCtx(()=>[...a[7]||(a[7]=[t.createTextVNode(" Botão Vuetify ",-1)])]),_:1})]),_:1})]),_:1})]),_:1})}const Ae=F(dt,[["render",mt]]),pt=t.defineComponent({name:"EliCartao",components:{EliBadge:ge},inheritAttrs:!1,props:{titulo:{type:String,default:""},status:{type:String,required:!0},variant:{type:String,default:"outlined"}},emits:{clicar:e=>!0},setup(e,{emit:a}){const n=t.computed(()=>e.status),r=t.computed(()=>{switch(e.status){case"novo":return"primary";case"rascunho":return"secondary";case"vendido":return"success";case"cancelado":return"error"}}),s=t.computed(()=>`eli-cartao--${e.status}`);function h(){a("clicar",e.status)}return{rotuloStatus:n,corStatus:r,classeStatus:s,onClick:h}}}),ft={class:"eli-cartao__titulo-texto"},bt={class:"eli-cartao__status"};function ht(e,a,n,r,s,h){const o=t.resolveComponent("EliBadge");return t.openBlock(),t.createBlock(le.VCard,t.mergeProps({class:["eli-cartao",e.classeStatus],variant:e.variant},e.$attrs),{default:t.withCtx(()=>[t.createVNode(le.VCardTitle,{class:"eli-cartao__titulo"},{default:t.withCtx(()=>[t.createElementVNode("div",ft,[t.renderSlot(e.$slots,"titulo",{},()=>[t.createTextVNode(t.toDisplayString(e.titulo),1)],!0)]),t.createElementVNode("div",bt,[t.createVNode(o,{badge:e.rotuloStatus,radius:"pill",color:e.corStatus},{default:t.withCtx(()=>[...a[0]||(a[0]=[t.createElementVNode("span",null,null,-1)])]),_:1},8,["badge","color"])])]),_:3}),t.createVNode(le.VCardText,{class:"eli-cartao__conteudo"},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default",{},void 0,!0)]),_:3}),e.$slots.acoes?(t.openBlock(),t.createBlock(le.VCardActions,{key:0,class:"eli-cartao__acoes"},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"acoes",{},void 0,!0)]),_:3})):t.createCommentVNode("",!0)]),_:3},16,["variant","class"])}const De=F(pt,[["render",ht],["__scopeId","data-v-6c492bd9"]]);var we=(e=>(e[e.sucesso=200]="sucesso",e[e.erroConhecido=400]="erroConhecido",e[e.erroPermissao=401]="erroPermissao",e[e.erroNaoEncontrado=404]="erroNaoEncontrado",e[e.erroDesconhecido=500]="erroDesconhecido",e[e.tempoEsgotado=504]="tempoEsgotado",e))(we||{});/** +(function(F,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("vuetify/components/VBtn"),require("vuetify/components/VBadge"),require("vuetify/components/VTextField"),require("vuetify/components/VCard"),require("vuetify/components/VGrid"),require("vuetify/components"),require("vuetify/components/VChip"),require("vuetify/components/VTextarea"),require("vuetify/components/VSelect")):typeof define=="function"&&define.amd?define(["exports","vue","vuetify/components/VBtn","vuetify/components/VBadge","vuetify/components/VTextField","vuetify/components/VCard","vuetify/components/VGrid","vuetify/components","vuetify/components/VChip","vuetify/components/VTextarea","vuetify/components/VSelect"],t):(F=typeof globalThis<"u"?globalThis:F||self,t(F.eli_vue={},F.Vue,F.VBtn,F.VBadge,F.VTextField,F.VCard,F.VGrid,F.components,F.VChip,F.VTextarea,F.VSelect))})(this,(function(F,t,tt,at,Ce,ie,ot,_e,nt,rt,lt){"use strict";const it=t.defineComponent({name:"EliBotao",inheritAttrs:!1,props:{color:{type:String,default:"primary"},variant:{type:String,default:"elevated"},size:{type:String,default:"default"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}}}),P=(e,a)=>{const n=e.__vccOpts||e;for(const[r,s]of a)n[r]=s;return n};function st(e,a,n,r,s,m){return t.openBlock(),t.createBlock(tt.VBtn,t.mergeProps({color:e.color,variant:e.variant,size:e.size,disabled:e.disabled,loading:e.loading},e.$attrs,{class:"eli-botao text-none pt-1"}),{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},16,["color","variant","size","disabled","loading"])}const ve=P(it,[["render",st]]),Ae={suave:"4px",pill:"10px"},ct=t.defineComponent({name:"EliBadge",inheritAttrs:!1,props:{color:{type:String,default:"primary"},location:{type:String,default:"top right"},offsetX:{type:String,default:"0"},offsetY:{type:String,default:"0"},dot:{type:Boolean,default:!1},visible:{type:Boolean,default:!0},badge:{type:[String,Number],default:void 0},radius:{type:String,default:"suave"}},setup(e){const a=t.computed(()=>e.radius in Ae?Ae[e.radius]:e.radius),n=t.computed(()=>e.dot||e.badge!==void 0?e.visible:!1),r=t.computed(()=>({"--eli-badge-radius":a.value}));return{showBadge:n,badgeStyle:r}}});function dt(e,a,n,r,s,m){return e.showBadge?(t.openBlock(),t.createBlock(at.VBadge,t.mergeProps({key:0,color:e.color},e.$attrs,{location:e.location,"offset-x":e.offsetX,"offset-y":e.offsetY,dot:e.dot,content:e.badge,style:e.badgeStyle,class:"eli-badge"}),{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default",{},void 0,!0)]),_:3},16,["color","location","offset-x","offset-y","dot","content","style"])):t.renderSlot(e.$slots,"default",{key:1},void 0,!0)}const ye=P(ct,[["render",dt],["__scopeId","data-v-371c8db4"]]);function ut(e){return e.replace(/\D+/g,"")}function mt(e){const a=ut(e);return a.length<=11?a.replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d{1,2})$/,"$1-$2").slice(0,14):a.replace(/^(\d{2})(\d)/,"$1.$2").replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3").replace(/\.(\d{3})(\d)/,".$1/$2").replace(/(\d{4})(\d)/,"$1-$2").slice(0,18)}function pt(e){return e.replace(/\D+/g,"")}function ft(e){const a=pt(e);return a?a.length<=10?a.replace(/^(\d{2})(\d)/,"($1) $2").replace(/(\d{4})(\d)/,"$1-$2").slice(0,14):a.replace(/^(\d{2})(\d)/,"($1) $2").replace(/(\d{5})(\d)/,"$1-$2").slice(0,15):""}function bt(e){return e.replace(/\D+/g,"")}function ht(e){const a=bt(e);return a?a.replace(/^(\d{5})(\d)/,"$1-$2").slice(0,9):""}const gt=t.defineComponent({name:"EliEntradaTexto",inheritAttrs:!1,props:{value:{type:[String,null],default:void 0},opcoes:{type:Object,required:!0}},emits:{"update:value":e=>!0,input:e=>!0,change:e=>!0,focus:()=>!0,blur:()=>!0},setup(e,{attrs:a,emit:n}){const r=t.computed(()=>{var i;return((i=e.opcoes)==null?void 0:i.formato)??"texto"}),s=t.computed({get:()=>e.value,set:i=>{n("update:value",i),n("input",i),n("change",i)}}),m=t.computed(()=>r.value==="email"?"email":r.value==="url"?"url":"text"),o=t.computed(()=>{if(r.value==="telefone")return"tel";if(r.value==="cpfCnpj"||r.value==="cep")return"numeric"});function l(i){switch(r.value){case"telefone":return ft(i);case"cpfCnpj":return mt(i);case"cep":return ht(i);default:return i}}function u(i){const d=i.target,b=l(d.value);d.value=b,s.value=b}return{attrs:a,emit:n,localValue:s,inputHtmlType:m,inputMode:o,onInput:u}}});function yt(e,a,n,r,s,m){var o,l,u,i;return t.openBlock(),t.createBlock(Ce.VTextField,t.mergeProps({modelValue:e.localValue,"onUpdate:modelValue":a[0]||(a[0]=d=>e.localValue=d),type:e.inputHtmlType,inputmode:e.inputMode,label:(o=e.opcoes)==null?void 0:o.rotulo,placeholder:(l=e.opcoes)==null?void 0:l.placeholder,counter:(u=e.opcoes)==null?void 0:u.limiteCaracteres,maxlength:(i=e.opcoes)==null?void 0:i.limiteCaracteres},e.attrs,{onFocus:a[1]||(a[1]=()=>e.emit("focus")),onBlur:a[2]||(a[2]=()=>e.emit("blur")),onInput:e.onInput}),null,16,["modelValue","type","inputmode","label","placeholder","counter","maxlength","onInput"])}const $e=P(gt,[["render",yt]]),$t=t.defineComponent({name:"EliOlaMundo",components:{EliBotao:ve,EliBadge:ye,EliEntradaTexto:$e},setup(){const e=t.ref(""),a=t.ref(""),n=t.ref(""),r=t.ref(""),s=t.ref("");return{nome:e,email:r,documento:s,telefone:n,cep:a}}}),Et={class:"grid-example"};function kt(e,a,n,r,s,m){const o=t.resolveComponent("EliBadge"),l=t.resolveComponent("EliEntradaTexto"),u=t.resolveComponent("EliBotao");return t.openBlock(),t.createBlock(ot.VContainer,null,{default:t.withCtx(()=>[t.createVNode(ie.VCard,{class:"mx-auto",max_width:"400"},{default:t.withCtx(()=>[t.createVNode(ie.VCardTitle,null,{default:t.withCtx(()=>[t.createVNode(o,{badge:"Novo","offset-x":"-15",location:"right center"},{default:t.withCtx(()=>[...a[5]||(a[5]=[t.createTextVNode(" Olá Mundo! ",-1)])]),_:1})]),_:1}),t.createVNode(ie.VCardText,null,{default:t.withCtx(()=>[a[6]||(a[6]=t.createTextVNode(" Este é um componente de exemplo integrado com Vuetify. ",-1)),t.createElementVNode("div",Et,[t.createVNode(l,{value:e.nome,"onUpdate:value":a[0]||(a[0]=i=>e.nome=i),opcoes:{rotulo:"Nome",placeholder:"Digite o nome"},density:"compact"},null,8,["value"]),t.createVNode(l,{value:e.telefone,"onUpdate:value":a[1]||(a[1]=i=>e.telefone=i),opcoes:{rotulo:"Telefone",formato:"telefone"}},null,8,["value"]),t.createVNode(l,{value:e.cep,"onUpdate:value":a[2]||(a[2]=i=>e.cep=i),opcoes:{rotulo:"CEP",placeholder:"00000-000",formato:"cep"}},null,8,["value"]),t.createVNode(l,{value:e.documento,"onUpdate:value":a[3]||(a[3]=i=>e.documento=i),opcoes:{rotulo:"CPF / CNPJ",formato:"cpfCnpj"}},null,8,["value"]),t.createVNode(l,{value:e.email,"onUpdate:value":a[4]||(a[4]=i=>e.email=i),opcoes:{rotulo:"Email",placeholder:"email@exemplo.com",formato:"email"}},null,8,["value"])])]),_:1}),t.createVNode(ie.VCardActions,null,{default:t.withCtx(()=>[t.createVNode(u,{color:"primary",variant:"elevated",block:""},{default:t.withCtx(()=>[...a[7]||(a[7]=[t.createTextVNode(" Botão Vuetify ",-1)])]),_:1})]),_:1})]),_:1})]),_:1})}const Me=P($t,[["render",kt]]),Bt=t.defineComponent({name:"EliCartao",components:{EliBadge:ye},inheritAttrs:!1,props:{titulo:{type:String,default:""},status:{type:String,required:!0},variant:{type:String,default:"outlined"}},emits:{clicar:e=>!0},setup(e,{emit:a}){const n=t.computed(()=>e.status),r=t.computed(()=>{switch(e.status){case"novo":return"primary";case"rascunho":return"secondary";case"vendido":return"success";case"cancelado":return"error"}}),s=t.computed(()=>`eli-cartao--${e.status}`);function m(){a("clicar",e.status)}return{rotuloStatus:n,corStatus:r,classeStatus:s,onClick:m}}}),Ct={class:"eli-cartao__titulo-texto"},_t={class:"eli-cartao__status"};function vt(e,a,n,r,s,m){const o=t.resolveComponent("EliBadge");return t.openBlock(),t.createBlock(ie.VCard,t.mergeProps({class:["eli-cartao",e.classeStatus],variant:e.variant},e.$attrs),{default:t.withCtx(()=>[t.createVNode(ie.VCardTitle,{class:"eli-cartao__titulo"},{default:t.withCtx(()=>[t.createElementVNode("div",Ct,[t.renderSlot(e.$slots,"titulo",{},()=>[t.createTextVNode(t.toDisplayString(e.titulo),1)],!0)]),t.createElementVNode("div",_t,[t.createVNode(o,{badge:e.rotuloStatus,radius:"pill",color:e.corStatus},{default:t.withCtx(()=>[...a[0]||(a[0]=[t.createElementVNode("span",null,null,-1)])]),_:1},8,["badge","color"])])]),_:3}),t.createVNode(ie.VCardText,{class:"eli-cartao__conteudo"},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default",{},void 0,!0)]),_:3}),e.$slots.acoes?(t.openBlock(),t.createBlock(ie.VCardActions,{key:0,class:"eli-cartao__acoes"},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"acoes",{},void 0,!0)]),_:3})):t.createCommentVNode("",!0)]),_:3},16,["variant","class"])}const we=P(Bt,[["render",vt],["__scopeId","data-v-6c492bd9"]]);var Te=(e=>(e[e.sucesso=200]="sucesso",e[e.erroConhecido=400]="erroConhecido",e[e.erroPermissao=401]="erroPermissao",e[e.erroNaoEncontrado=404]="erroNaoEncontrado",e[e.erroDesconhecido=500]="erroDesconhecido",e[e.tempoEsgotado=504]="tempoEsgotado",e))(Te||{});/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const gt=e=>{for(const a in e)if(a.startsWith("aria-")||a==="role"||a==="title")return!0;return!1};/** + */const St=e=>{for(const a in e)if(a.startsWith("aria-")||a==="role"||a==="title")return!0;return!1};/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Me=e=>e==="";/** + */const Pe=e=>e==="";/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const yt=(...e)=>e.filter((a,n,r)=>!!a&&a.trim()!==""&&r.indexOf(a)===n).join(" ").trim();/** + */const Vt=(...e)=>e.filter((a,n,r)=>!!a&&a.trim()!==""&&r.indexOf(a)===n).join(" ").trim();/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Te=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/** + */const Fe=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const $t=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,n,r)=>r?r.toUpperCase():n.toLowerCase());/** + */const Nt=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,n,r)=>r?r.toUpperCase():n.toLowerCase());/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Et=e=>{const a=$t(e);return a.charAt(0).toUpperCase()+a.slice(1)};/** + */const Dt=e=>{const a=Nt(e);return a.charAt(0).toUpperCase()+a.slice(1)};/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */var fe={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};/** + */var be={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const kt=({name:e,iconNode:a,absoluteStrokeWidth:n,"absolute-stroke-width":r,strokeWidth:s,"stroke-width":h,size:o=fe.width,color:l=fe.stroke,...u},{slots:i})=>t.h("svg",{...fe,...u,width:o,height:o,stroke:l,"stroke-width":Me(n)||Me(r)||n===!0||r===!0?Number(s||h||fe["stroke-width"])*24/Number(o):s||h||fe["stroke-width"],class:yt("lucide",u.class,...e?[`lucide-${Te(Et(e))}-icon`,`lucide-${Te(e)}`]:["lucide-icon"]),...!i.default&&!gt(u)&&{"aria-hidden":"true"}},[...a.map(f=>t.h(...f)),...i.default?[i.default()]:[]]);/** + */const At=({name:e,iconNode:a,absoluteStrokeWidth:n,"absolute-stroke-width":r,strokeWidth:s,"stroke-width":m,size:o=be.width,color:l=be.stroke,...u},{slots:i})=>t.h("svg",{...be,...u,width:o,height:o,stroke:l,"stroke-width":Pe(n)||Pe(r)||n===!0||r===!0?Number(s||m||be["stroke-width"])*24/Number(o):s||m||be["stroke-width"],class:Vt("lucide",u.class,...e?[`lucide-${Fe(Dt(e))}-icon`,`lucide-${Fe(e)}`]:["lucide-icon"]),...!i.default&&!St(u)&&{"aria-hidden":"true"}},[...a.map(d=>t.h(...d)),...i.default?[i.default()]:[]]);/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const me=(e,a)=>(n,{slots:r,attrs:s})=>t.h(kt,{...s,...n,iconNode:a,name:e},r);/** + */const pe=(e,a)=>(n,{slots:r,attrs:s})=>t.h(At,{...s,...n,iconNode:a,name:e},r);/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Pe=me("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);/** + */const Oe=pe("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Fe=me("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);/** + */const qe=pe("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Oe=me("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/** + */const Ie=pe("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Ie=me("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/** + */const Le=pe("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const _t=me("ellipsis-vertical",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"12",cy:"5",r:"1",key:"gxeob9"}],["circle",{cx:"12",cy:"19",r:"1",key:"lyex9k"}]]);/** + */const Mt=pe("ellipsis-vertical",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"12",cy:"5",r:"1",key:"gxeob9"}],["circle",{cx:"12",cy:"19",r:"1",key:"lyex9k"}]]);/** * @license lucide-vue-next v0.563.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Bt=me("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]),Ct=t.defineComponent({name:"EliTabelaCaixaDeBusca",components:{Search:Bt},props:{modelo:{type:String,required:!1,default:""}},emits:{buscar(e){return typeof e=="string"}},setup(e,{emit:a}){const n=t.ref(e.modelo??"");t.watch(()=>e.modelo,s=>{s!==void 0&&s!==n.value&&(n.value=s)});function r(){a("buscar",n.value.trim())}return{texto:n,emitirBusca:r}}}),vt={class:"eli-tabela__busca"},St={class:"eli-tabela__busca-input-wrapper"};function Vt(e,a,n,r,s,h){const o=t.resolveComponent("Search");return t.openBlock(),t.createElementBlock("div",vt,[t.createElementVNode("div",St,[t.withDirectives(t.createElementVNode("input",{id:"eli-tabela-busca","onUpdate:modelValue":a[0]||(a[0]=l=>e.texto=l),type:"search",class:"eli-tabela__busca-input",placeholder:"Digite termos para filtrar",onKeyup:a[1]||(a[1]=t.withKeys((...l)=>e.emitirBusca&&e.emitirBusca(...l),["enter"]))},null,544),[[t.vModelText,e.texto]]),t.createElementVNode("button",{type:"button",class:"eli-tabela__busca-botao","aria-label":"Buscar",title:"Buscar",onClick:a[2]||(a[2]=(...l)=>e.emitirBusca&&e.emitirBusca(...l))},[t.createVNode(o,{class:"eli-tabela__busca-botao-icone",size:16,"stroke-width":2,"aria-hidden":"true"})])])])}const Nt=F(Ct,[["render",Vt],["__scopeId","data-v-341415d1"]]),At=t.defineComponent({name:"EliTabelaCabecalho",components:{EliTabelaCaixaDeBusca:Nt},props:{exibirBusca:{type:Boolean,required:!0},exibirBotaoColunas:{type:Boolean,required:!1,default:!0},exibirBotaoFiltroAvancado:{type:Boolean,required:!1,default:!1},valorBusca:{type:String,required:!0},acoesCabecalho:{type:Array,required:!0}},emits:{buscar(e){return typeof e=="string"},colunas(){return!0},filtroAvancado(){return!0}},setup(e,{emit:a}){const n=t.computed(()=>e.acoesCabecalho.length>0);function r(o){a("buscar",o)}function s(){a("colunas")}function h(){a("filtroAvancado")}return{temAcoesCabecalho:n,emitBuscar:r,emitColunas:s,emitFiltroAvancado:h}}}),Dt={class:"eli-tabela__cabecalho"},wt={key:0,class:"eli-tabela__busca-grupo"},Mt={key:1,class:"eli-tabela__acoes-cabecalho"},Tt=["onClick"],Pt={class:"eli-tabela__acoes-cabecalho-rotulo"};function Ft(e,a,n,r,s,h){const o=t.resolveComponent("EliTabelaCaixaDeBusca");return t.openBlock(),t.createElementBlock("div",Dt,[e.exibirBusca?(t.openBlock(),t.createElementBlock("div",wt,[e.exibirBotaoColunas?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"eli-tabela__acoes-cabecalho-botao eli-tabela__acoes-cabecalho-botao--colunas",onClick:a[0]||(a[0]=(...l)=>e.emitColunas&&e.emitColunas(...l))}," Colunas ")):t.createCommentVNode("",!0),e.exibirBotaoFiltroAvancado?(t.openBlock(),t.createElementBlock("button",{key:1,type:"button",class:"eli-tabela__acoes-cabecalho-botao eli-tabela__acoes-cabecalho-botao--filtro",onClick:a[1]||(a[1]=(...l)=>e.emitFiltroAvancado&&e.emitFiltroAvancado(...l))}," Filtro ")):t.createCommentVNode("",!0),t.createVNode(o,{modelo:e.valorBusca,onBuscar:e.emitBuscar},null,8,["modelo","onBuscar"])])):t.createCommentVNode("",!0),e.temAcoesCabecalho?(t.openBlock(),t.createElementBlock("div",Mt,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.acoesCabecalho,(l,u)=>(t.openBlock(),t.createElementBlock("button",{key:`${l.rotulo}-${u}`,type:"button",class:"eli-tabela__acoes-cabecalho-botao",style:t.normalizeStyle(l.cor?{backgroundColor:l.cor,color:"#fff"}:void 0),onClick:l.acao},[l.icone?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(l.icone),{key:0,class:"eli-tabela__acoes-cabecalho-icone",size:16,"stroke-width":2})):t.createCommentVNode("",!0),t.createElementVNode("span",Pt,t.toDisplayString(l.rotulo),1)],12,Tt))),128))])):t.createCommentVNode("",!0)])}const Ot=F(At,[["render",Ft],["__scopeId","data-v-17166105"]]),It=t.defineComponent({name:"EliTabelaEstados",props:{carregando:{type:Boolean,required:!0},erro:{type:String,required:!0},mensagemVazio:{type:String,required:!1,default:void 0}}}),qt={key:0,class:"eli-tabela eli-tabela--carregando","aria-busy":"true"},Lt={key:1,class:"eli-tabela eli-tabela--erro",role:"alert"},zt={class:"eli-tabela__erro-mensagem"},jt={key:2,class:"eli-tabela eli-tabela--vazio"};function Ht(e,a,n,r,s,h){return e.carregando?(t.openBlock(),t.createElementBlock("div",qt," Carregando... ")):e.erro?(t.openBlock(),t.createElementBlock("div",Lt,[a[0]||(a[0]=t.createElementVNode("div",{class:"eli-tabela__erro-titulo"},"Erro",-1)),t.createElementVNode("div",zt,t.toDisplayString(e.erro),1)])):(t.openBlock(),t.createElementBlock("div",jt,t.toDisplayString(e.mensagemVazio??"Nenhum registro encontrado."),1))}const Ut=F(It,[["render",Ht]]),Yt=t.defineComponent({name:"EliTabelaDebug",props:{isDev:{type:Boolean,required:!0},menuAberto:{type:Number,required:!0},menuPopupPos:{type:Object,required:!0}}}),Rt={key:0,style:{position:"fixed",left:"8px",bottom:"8px","z-index":"999999",background:"rgba(185,28,28,0.9)",color:"#fff",padding:"6px 10px","border-radius":"8px","font-size":"12px","max-width":"500px"}};function Jt(e,a,n,r,s,h){return e.isDev?(t.openBlock(),t.createElementBlock("div",Rt,[a[0]||(a[0]=t.createElementVNode("div",null,[t.createElementVNode("b",null,"EliTabela debug")],-1)),t.createElementVNode("div",null,"menuAberto: "+t.toDisplayString(e.menuAberto),1),t.createElementVNode("div",null,"menuPos: top="+t.toDisplayString(e.menuPopupPos.top)+", left="+t.toDisplayString(e.menuPopupPos.left),1)])):t.createCommentVNode("",!0)}const Wt=F(Yt,[["render",Jt]]),Zt=t.defineComponent({name:"EliTabelaHead",components:{ArrowUp:Fe,ArrowDown:Pe},props:{colunas:{type:Array,required:!0},temAcoes:{type:Boolean,required:!0},temColunasInvisiveis:{type:Boolean,required:!0},colunaOrdenacao:{type:String,required:!0},direcaoOrdenacao:{type:String,required:!0}},emits:{alternarOrdenacao(e){return typeof e=="string"&&e.length>0}},setup(e,{emit:a}){function n(s){return(s==null?void 0:s.coluna_ordem)!==void 0&&(s==null?void 0:s.coluna_ordem)!==null}function r(s){a("alternarOrdenacao",s)}return{ArrowUp:Fe,ArrowDown:Pe,isOrdenavel:n,emitAlternarOrdenacao:r}}}),Gt={class:"eli-tabela__thead"},Xt={class:"eli-tabela__tr eli-tabela__tr--header"},Kt={key:0,class:"eli-tabela__th eli-tabela__th--expander",scope:"col"},Qt=["onClick"],xt={class:"eli-tabela__th-texto"},ea={key:1,class:"eli-tabela__th-label"},ta={key:1,class:"eli-tabela__th eli-tabela__th--acoes",scope:"col"};function aa(e,a,n,r,s,h){const o=t.resolveComponent("ArrowUp");return t.openBlock(),t.createElementBlock("thead",Gt,[t.createElementVNode("tr",Xt,[e.temColunasInvisiveis?(t.openBlock(),t.createElementBlock("th",Kt)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.colunas,(l,u)=>(t.openBlock(),t.createElementBlock("th",{key:`th-${u}`,class:t.normalizeClass(["eli-tabela__th",[e.isOrdenavel(l)?"eli-tabela__th--ordenavel":void 0]]),scope:"col"},[e.isOrdenavel(l)?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:t.normalizeClass(["eli-tabela__th-botao",[e.colunaOrdenacao===String(l.coluna_ordem)?"eli-tabela__th-botao--ativo":void 0]]),onClick:i=>e.emitAlternarOrdenacao(String(l.coluna_ordem))},[t.createElementVNode("span",xt,t.toDisplayString(l.rotulo),1),e.colunaOrdenacao===String(l.coluna_ordem)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.direcaoOrdenacao==="asc"?e.ArrowUp:e.ArrowDown),{key:0,class:"eli-tabela__th-icone",size:16,"stroke-width":2,"aria-hidden":"true"})):(t.openBlock(),t.createBlock(o,{key:1,class:"eli-tabela__th-icone eli-tabela__th-icone--oculto",size:16,"stroke-width":2,"aria-hidden":"true"}))],10,Qt)):(t.openBlock(),t.createElementBlock("span",ea,t.toDisplayString(l.rotulo),1))],2))),128)),e.temAcoes?(t.openBlock(),t.createElementBlock("th",ta," Ações ")):t.createCommentVNode("",!0)])])}const oa=F(Zt,[["render",aa]]),na=t.defineComponent({name:"EliTabelaCelulaTextoSimples",components:{},props:{dados:{type:Object}},data(){return{}},methods:{},setup({dados:e}){return{dados:e}}}),ra={key:1};function la(e,a,n,r,s,h){var o,l,u;return(o=e.dados)!=null&&o.acao?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"eli-tabela__celula-link",onClick:a[0]||(a[0]=t.withModifiers(i=>e.dados.acao(),["stop","prevent"]))},t.toDisplayString((l=e.dados)==null?void 0:l.texto),1)):(t.openBlock(),t.createElementBlock("span",ra,t.toDisplayString((u=e.dados)==null?void 0:u.texto),1))}const ia=F(na,[["render",la],["__scopeId","data-v-7a629ffa"]]),sa=t.defineComponent({name:"EliTabelaCelulaTextoTruncado",props:{dados:{type:Object}},setup({dados:e}){return{dados:e}}}),ca=["title"],da=["title"];function ua(e,a,n,r,s,h){var o,l,u,i,f;return(o=e.dados)!=null&&o.acao?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"eli-tabela__texto-truncado eli-tabela__celula-link",title:(l=e.dados)==null?void 0:l.texto,onClick:a[0]||(a[0]=t.withModifiers(y=>e.dados.acao(),["stop","prevent"]))},t.toDisplayString((u=e.dados)==null?void 0:u.texto),9,ca)):(t.openBlock(),t.createElementBlock("span",{key:1,class:"eli-tabela__texto-truncado",title:(i=e.dados)==null?void 0:i.texto},t.toDisplayString((f=e.dados)==null?void 0:f.texto),9,da))}const ma=F(sa,[["render",ua],["__scopeId","data-v-74854889"]]),pa=t.defineComponent({name:"EliTabelaCelulaNumero",components:{},props:{dados:{type:Object}},data(){return{}},methods:{},setup({dados:e}){return{dados:e}}}),fa={key:1};function ba(e,a,n,r,s,h){var o,l,u;return(o=e.dados)!=null&&o.acao?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"eli-tabela__celula-link",onClick:a[0]||(a[0]=t.withModifiers(i=>e.dados.acao(),["stop","prevent"]))},t.toDisplayString(String((l=e.dados)==null?void 0:l.numero).replace(".",",")),1)):(t.openBlock(),t.createElementBlock("span",fa,t.toDisplayString(String((u=e.dados)==null?void 0:u.numero).replace(".",",")),1))}const ha={textoSimples:ia,textoTruncado:ma,numero:F(pa,[["render",ba],["__scopeId","data-v-e7bac7ff"]])},ga=t.defineComponent({name:"EliTabelaCelula",props:{celula:{type:Array,required:!0}},setup(e){const a=t.computed(()=>e.celula[0]),n=t.computed(()=>e.celula[1]),r=t.computed(()=>ha[a.value]),s=t.computed(()=>n.value);return{Componente:r,dadosParaComponente:s}}});function ya(e,a,n,r,s,h){return t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.Componente),{dados:e.dadosParaComponente},null,8,["dados"])}const qe=F(ga,[["render",ya]]),$a=t.defineComponent({name:"EliTabelaDetalhesLinha",components:{EliTabelaCelula:qe},props:{linha:{type:null,required:!0},colunasInvisiveis:{type:Array,required:!0}}}),Ea={class:"eli-tabela__detalhes"},ka={class:"eli-tabela__detalhe-rotulo"},_a={class:"eli-tabela__detalhe-valor"};function Ba(e,a,n,r,s,h){const o=t.resolveComponent("EliTabelaCelula");return t.openBlock(),t.createElementBlock("div",Ea,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.colunasInvisiveis,(l,u)=>(t.openBlock(),t.createElementBlock("div",{key:`det-${u}-${l.rotulo}`,class:"eli-tabela__detalhe"},[t.createElementVNode("div",ka,t.toDisplayString(l.rotulo),1),t.createElementVNode("div",_a,[t.createVNode(o,{celula:l.celula(e.linha)},null,8,["celula"])])]))),128))])}const Ca=F($a,[["render",Ba],["__scopeId","data-v-f1ee8d20"]]),va=t.defineComponent({name:"EliTabelaBody",components:{EliTabelaCelula:qe,EliTabelaDetalhesLinha:Ca,MoreVertical:_t,ChevronRight:Ie,ChevronDown:Oe},props:{colunas:{type:Array,required:!0},colunasInvisiveis:{type:Array,required:!0},temColunasInvisiveis:{type:Boolean,required:!0},linhasExpandidas:{type:Object,required:!0},linhas:{type:Array,required:!0},temAcoes:{type:Boolean,required:!0},menuAberto:{type:Number,required:!0},possuiAcoes:{type:Function,required:!0},toggleMenu:{type:Function,required:!0},alternarLinhaExpandida:{type:Function,required:!0}},setup(){return{ChevronRight:Ie,ChevronDown:Oe}}}),Sa={class:"eli-tabela__tbody"},Va=["aria-expanded","aria-label","title","onClick"],Na=["id","disabled","aria-expanded","aria-controls","aria-label","title","onClick"],Aa=["colspan"];function Da(e,a,n,r,s,h){const o=t.resolveComponent("EliTabelaCelula"),l=t.resolveComponent("MoreVertical"),u=t.resolveComponent("EliTabelaDetalhesLinha");return t.openBlock(),t.createElementBlock("tbody",Sa,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.linhas,(i,f)=>{var y,D,A,_,c,E;return t.openBlock(),t.createElementBlock(t.Fragment,{key:`grp-${f}`},[t.createElementVNode("tr",{class:t.normalizeClass(["eli-tabela__tr",[f%2===1?"eli-tabela__tr--zebra":void 0]])},[e.temColunasInvisiveis?(t.openBlock(),t.createElementBlock("td",{class:"eli-tabela__td eli-tabela__td--expander",key:`td-${f}-exp`},[t.createElementVNode("button",{type:"button",class:t.normalizeClass(["eli-tabela__expander-botao",[(y=e.linhasExpandidas)!=null&&y[f]?"eli-tabela__expander-botao--ativo":void 0]]),"aria-expanded":(D=e.linhasExpandidas)!=null&&D[f]?"true":"false","aria-label":(A=e.linhasExpandidas)!=null&&A[f]?"Ocultar colunas ocultas":"Mostrar colunas ocultas",title:(_=e.linhasExpandidas)!=null&&_[f]?"Ocultar detalhes":"Mostrar detalhes",onClick:t.withModifiers(g=>e.alternarLinhaExpandida(f),["stop"])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent((c=e.linhasExpandidas)!=null&&c[f]?e.ChevronDown:e.ChevronRight),{class:"eli-tabela__expander-icone",size:16,"stroke-width":2,"aria-hidden":"true"}))],10,Va)])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.colunas,(g,k)=>(t.openBlock(),t.createElementBlock("td",{key:`td-${f}-${k}`,class:"eli-tabela__td"},[t.createVNode(o,{celula:g.celula(i)},null,8,["celula"])]))),128)),e.temAcoes?(t.openBlock(),t.createElementBlock("td",{class:"eli-tabela__td eli-tabela__td--acoes",key:`td-${f}-acoes`},[t.createElementVNode("div",{class:t.normalizeClass(["eli-tabela__acoes-container",[e.menuAberto===f?"eli-tabela__acoes-container--aberto":void 0]])},[t.createElementVNode("button",{class:"eli-tabela__acoes-toggle",type:"button",id:`eli-tabela-acoes-toggle-${f}`,disabled:!e.possuiAcoes(f),"aria-haspopup":"menu","aria-expanded":e.menuAberto===f?"true":"false","aria-controls":e.possuiAcoes(f)?`eli-tabela-acoes-menu-${f}`:void 0,"aria-label":e.possuiAcoes(f)?"Ações da linha":"Nenhuma ação disponível",title:e.possuiAcoes(f)?"Ações":"Nenhuma ação disponível",onClick:t.withModifiers(g=>e.toggleMenu(f,g),["stop"])},[t.createVNode(l,{class:"eli-tabela__acoes-toggle-icone",size:18,"stroke-width":2})],8,Na)],2)])):t.createCommentVNode("",!0)],2),e.temColunasInvisiveis&&((E=e.linhasExpandidas)!=null&&E[f])?(t.openBlock(),t.createElementBlock("tr",{key:0,class:t.normalizeClass(["eli-tabela__tr eli-tabela__tr--detalhes",[f%2===1?"eli-tabela__tr--zebra":void 0]])},[t.createElementVNode("td",{class:"eli-tabela__td eli-tabela__td--detalhes",colspan:(e.temColunasInvisiveis?1:0)+e.colunas.length+(e.temAcoes?1:0)},[t.createVNode(u,{linha:i,colunasInvisiveis:e.colunasInvisiveis},null,8,["linha","colunasInvisiveis"])],8,Aa)],2)):t.createCommentVNode("",!0)],64)}),128))])}const wa=F(va,[["render",Da]]),Ma=t.defineComponent({name:"EliTabelaMenuAcoes",props:{menuAberto:{type:Number,required:!0},posicao:{type:Object,required:!0},acoes:{type:Array,required:!0},linha:{type:null,required:!0}},emits:{executar(e){return e!==null&&typeof e=="object"}},setup(e,{emit:a,expose:n}){const r=t.ref(null);n({menuEl:r});const s=t.computed(()=>e.acoes.length>0);function h(o){e.linha&&a("executar",{acao:o.acao,linha:e.linha})}return{menuEl:r,possuiAcoes:s,emitExecutar:h}}}),Ta=["id","aria-labelledby"],Pa=["aria-label","title","onClick"],Fa={class:"eli-tabela__acoes-item-texto"};function Oa(e,a,n,r,s,h){return t.openBlock(),t.createBlock(t.Teleport,{to:"body"},[e.menuAberto!==null&&e.possuiAcoes?(t.openBlock(),t.createElementBlock("ul",{key:0,id:`eli-tabela-acoes-menu-${e.menuAberto}`,ref:"menuEl",class:"eli-tabela__acoes-menu",role:"menu","aria-labelledby":`eli-tabela-acoes-toggle-${e.menuAberto}`,style:t.normalizeStyle({position:"fixed",top:`${e.posicao.top}px`,left:`${e.posicao.left}px`,zIndex:999999})},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.acoes,o=>(t.openBlock(),t.createElementBlock("li",{key:`acao-${e.menuAberto}-${o.indice}`,class:"eli-tabela__acoes-item",role:"none"},[t.createElementVNode("button",{type:"button",class:"eli-tabela__acoes-item-botao",style:t.normalizeStyle({color:o.acao.cor}),role:"menuitem","aria-label":o.acao.rotulo,title:o.acao.rotulo,onClick:t.withModifiers(l=>e.emitExecutar(o),["stop"])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.acao.icone),{class:"eli-tabela__acoes-item-icone",size:16,"stroke-width":2})),t.createElementVNode("span",Fa,t.toDisplayString(o.acao.rotulo),1)],12,Pa)]))),128))],12,Ta)):t.createCommentVNode("",!0)])}const Ia=F(Ma,[["render",Oa]]),qa=t.defineComponent({name:"EliTabelaPaginacao",props:{pagina:{type:Number,required:!0},totalPaginas:{type:Number,required:!0},maximoBotoes:{type:Number,required:!1}},emits:{alterar(e){return Number.isFinite(e)}},setup(e,{emit:a}){const n=t.computed(()=>{const i=e.maximoBotoes;return typeof i=="number"&&i>=5?Math.floor(i):7}),r=t.computed(()=>{const i=e.totalPaginas,f=e.pagina,y=n.value,D=[],A=k=>{D.push({label:String(k),pagina:k,ativo:k===f})},_=()=>{D.push({label:"…",ehEllipsis:!0})};if(i<=y){for(let k=1;k<=i;k+=1)A(k);return D}const c=Math.max(3,y-2);let E=Math.max(2,f-Math.floor(c/2)),g=E+c-1;g>=i&&(g=i-1,E=g-c+1),A(1),E>2&&_();for(let k=E;k<=g;k+=1)A(k);return ge.pagina<=1),o=t.computed(()=>e.pagina>=e.totalPaginas),l=t.computed(()=>e.pagina),u=t.computed(()=>e.totalPaginas);return{botoes:r,irParaPagina:s,anteriorDesabilitado:h,proximaDesabilitada:o,paginaAtual:l,totalPaginasExibidas:u}}}),La={key:0,class:"eli-tabela__paginacao",role:"navigation","aria-label":"Paginação de resultados"},za=["disabled"],ja={key:0,class:"eli-tabela__pagina-ellipsis","aria-hidden":"true"},Ha=["disabled","aria-current","aria-label","onClick"],Ua=["disabled"];function Ya(e,a,n,r,s,h){return e.totalPaginasExibidas>1?(t.openBlock(),t.createElementBlock("nav",La,[t.createElementVNode("button",{type:"button",class:"eli-tabela__pagina-botao",disabled:e.anteriorDesabilitado,"aria-label":"Página anterior",onClick:a[0]||(a[0]=o=>e.irParaPagina(e.paginaAtual-1))}," << ",8,za),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.botoes,(o,l)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:`${o.label}-${l}`},[o.ehEllipsis?(t.openBlock(),t.createElementBlock("span",ja,t.toDisplayString(o.label),1)):(t.openBlock(),t.createElementBlock("button",{key:1,type:"button",class:t.normalizeClass(["eli-tabela__pagina-botao",o.ativo?"eli-tabela__pagina-botao--ativo":void 0]),disabled:o.ativo,"aria-current":o.ativo?"page":void 0,"aria-label":`Ir para página ${o.label}`,onClick:u=>e.irParaPagina(o.pagina)},t.toDisplayString(o.label),11,Ha))],64))),128)),t.createElementVNode("button",{type:"button",class:"eli-tabela__pagina-botao",disabled:e.proximaDesabilitada,"aria-label":"Próxima página",onClick:a[1]||(a[1]=o=>e.irParaPagina(e.paginaAtual+1))}," >> ",8,Ua)])):t.createCommentVNode("",!0)}const Ra=F(qa,[["render",Ya],["__scopeId","data-v-5ca7a362"]]),Le="application/x-eli-tabela-coluna",Ja=t.defineComponent({name:"EliTabelaModalColunas",props:{aberto:{type:Boolean,required:!0},rotulosColunas:{type:Array,required:!0},configInicial:{type:Object,required:!0},colunas:{type:Array,required:!0}},emits:{fechar(){return!0},salvar(e){return!0}},setup(e,{emit:a}){const n=t.ref([]),r=t.ref([]);function s(){var Z,ee;const _=e.rotulosColunas,c=(((Z=e.configInicial.visiveis)==null?void 0:Z.length)??0)>0||(((ee=e.configInicial.invisiveis)==null?void 0:ee.length)??0)>0,E=new Set(e.colunas.filter(q=>q.visivel===!1).map(q=>q.rotulo)),g=c?new Set(e.configInicial.invisiveis??[]):E,k=_.filter(q=>!g.has(q)),H=e.configInicial.visiveis??[],ie=new Set(k),W=[];for(const q of H)ie.has(q)&&W.push(q);for(const q of k)W.includes(q)||W.push(q);n.value=W,r.value=_.filter(q=>g.has(q))}t.watch(()=>[e.aberto,e.rotulosColunas,e.configInicial,e.colunas],()=>{e.aberto&&s()},{deep:!0,immediate:!0});function h(){a("fechar")}function o(){a("salvar",{visiveis:[...n.value],invisiveis:[...r.value]})}function l(_,c){var E,g;try{(E=_.dataTransfer)==null||E.setData(Le,JSON.stringify(c)),(g=_.dataTransfer)==null||g.setData("text/plain",c.rotulo),_.dataTransfer.effectAllowed="move"}catch{}}function u(_){var c;try{const E=(c=_.dataTransfer)==null?void 0:c.getData(Le);if(!E)return null;const g=JSON.parse(E);return!g||typeof g.rotulo!="string"||g.origem!=="visiveis"&&g.origem!=="invisiveis"?null:g}catch{return null}}function i(_){const c=_.origem==="visiveis"?n.value:r.value,E=c.indexOf(_.rotulo);E>=0&&c.splice(E,1)}function f(_,c,E){const g=_==="visiveis"?n.value:r.value,k=g.indexOf(c);k>=0&&g.splice(k,1),E===null||E<0||E>g.length?g.push(c):g.splice(E,0,c)}function y(_,c,E,g){l(_,{rotulo:c,origem:E,index:g})}function D(_,c,E){const g=u(_);if(g)if(i(g),f(c,g.rotulo,E),c==="visiveis"){const k=r.value.indexOf(g.rotulo);k>=0&&r.value.splice(k,1)}else{const k=n.value.indexOf(g.rotulo);k>=0&&n.value.splice(k,1)}}function A(_,c,E){const g=u(_);if(g)if(i(g),f(c,g.rotulo,null),c==="visiveis"){const k=r.value.indexOf(g.rotulo);k>=0&&r.value.splice(k,1)}else{const k=n.value.indexOf(g.rotulo);k>=0&&n.value.splice(k,1)}}return{visiveisLocal:n,invisiveisLocal:r,emitFechar:h,emitSalvar:o,onDragStart:y,onDropItem:D,onDropLista:A}}}),Wa={class:"eli-tabela-modal-colunas__modal",role:"dialog","aria-modal":"true","aria-label":"Configurar colunas"},Za={class:"eli-tabela-modal-colunas__header"},Ga={class:"eli-tabela-modal-colunas__conteudo"},Xa={class:"eli-tabela-modal-colunas__coluna"},Ka=["onDragstart","onDrop"],Qa={class:"eli-tabela-modal-colunas__item-texto"},xa={class:"eli-tabela-modal-colunas__coluna"},eo=["onDragstart","onDrop"],to={class:"eli-tabela-modal-colunas__item-texto"},ao={class:"eli-tabela-modal-colunas__footer"};function oo(e,a,n,r,s,h){return e.aberto?(t.openBlock(),t.createElementBlock("div",{key:0,class:"eli-tabela-modal-colunas__overlay",role:"presentation",onClick:a[9]||(a[9]=t.withModifiers((...o)=>e.emitFechar&&e.emitFechar(...o),["self"]))},[t.createElementVNode("div",Wa,[t.createElementVNode("header",Za,[a[10]||(a[10]=t.createElementVNode("h3",{class:"eli-tabela-modal-colunas__titulo"},"Colunas",-1)),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-colunas__fechar","aria-label":"Fechar",onClick:a[0]||(a[0]=(...o)=>e.emitFechar&&e.emitFechar(...o))}," × ")]),t.createElementVNode("div",Ga,[t.createElementVNode("div",Xa,[a[12]||(a[12]=t.createElementVNode("div",{class:"eli-tabela-modal-colunas__coluna-titulo"},"Visíveis",-1)),t.createElementVNode("div",{class:"eli-tabela-modal-colunas__lista",onDragover:a[2]||(a[2]=t.withModifiers(()=>{},["prevent"])),onDrop:a[3]||(a[3]=o=>e.onDropLista(o,"visiveis",null))},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.visiveisLocal,(o,l)=>(t.openBlock(),t.createElementBlock("div",{key:`vis-${o}`,class:"eli-tabela-modal-colunas__item",draggable:"true",onDragstart:u=>e.onDragStart(u,o,"visiveis",l),onDragover:a[1]||(a[1]=t.withModifiers(()=>{},["prevent"])),onDrop:u=>e.onDropItem(u,"visiveis",l)},[a[11]||(a[11]=t.createElementVNode("span",{class:"eli-tabela-modal-colunas__item-handle","aria-hidden":"true"},"⋮⋮",-1)),t.createElementVNode("span",Qa,t.toDisplayString(o),1)],40,Ka))),128))],32)]),t.createElementVNode("div",xa,[a[14]||(a[14]=t.createElementVNode("div",{class:"eli-tabela-modal-colunas__coluna-titulo"},"Invisíveis",-1)),t.createElementVNode("div",{class:"eli-tabela-modal-colunas__lista",onDragover:a[5]||(a[5]=t.withModifiers(()=>{},["prevent"])),onDrop:a[6]||(a[6]=o=>e.onDropLista(o,"invisiveis",null))},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.invisiveisLocal,(o,l)=>(t.openBlock(),t.createElementBlock("div",{key:`inv-${o}`,class:"eli-tabela-modal-colunas__item",draggable:"true",onDragstart:u=>e.onDragStart(u,o,"invisiveis",l),onDragover:a[4]||(a[4]=t.withModifiers(()=>{},["prevent"])),onDrop:u=>e.onDropItem(u,"invisiveis",l)},[a[13]||(a[13]=t.createElementVNode("span",{class:"eli-tabela-modal-colunas__item-handle","aria-hidden":"true"},"⋮⋮",-1)),t.createElementVNode("span",to,t.toDisplayString(o),1)],40,eo))),128))],32)])]),t.createElementVNode("footer",ao,[t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-colunas__botao eli-tabela-modal-colunas__botao--sec",onClick:a[7]||(a[7]=(...o)=>e.emitFechar&&e.emitFechar(...o))}," Cancelar "),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-colunas__botao eli-tabela-modal-colunas__botao--prim",onClick:a[8]||(a[8]=(...o)=>e.emitSalvar&&e.emitSalvar(...o))}," Salvar ")])])])):t.createCommentVNode("",!0)}const no=F(Ja,[["render",oo],["__scopeId","data-v-b8f693ef"]]);function ro(e){if(!Number.isFinite(e)||e<=0||e>=1)return 0;const a=e.toString();if(a.includes("e-")){const[,s]=a.split("e-"),h=Number(s);return Number.isFinite(h)?h:0}const n=a.indexOf(".");return n===-1?0:a.slice(n+1).replace(/0+$/,"").length}function lo(e){const a=(e??"").trim().replace(/,/g,".");if(!a)return null;const n=Number(a);return Number.isNaN(n)?null:n}function Ce(e,a){return e==null?"":a===null?String(e):Number(e).toFixed(Math.max(0,a)).replace(/\./g,",")}function ze(e){return(e??"").replace(/\D+/g,"")}function io(e){const a=(e??"").replace(/[^0-9.,]+/g,""),n=a.match(/[.,]/);if(!n)return a;const r=n[0],s=a.indexOf(r),h=a.slice(0,s).replace(/[.,]/g,""),o=a.slice(s+1).replace(/[.,]/g,"");return`${h.length?h:"0"}${r}${o}`}function so(e,a){if(a===null)return e;if(a<=0)return e.replace(/[.,]/g,"");const n=e.match(/[.,]/);if(!n)return e;const r=n[0],s=e.indexOf(r),h=e.slice(0,s),o=e.slice(s+1);return`${h}${r}${o.slice(0,a)}`}function co(e){const a=e.match(/^(\d+)[.,]$/);if(!a)return null;const n=Number(a[1]);return Number.isNaN(n)?null:n}const uo=t.defineComponent({name:"EliEntradaNumero",inheritAttrs:!1,props:{value:{type:[Number,null],default:void 0},opcoes:{type:Object,required:!0}},emits:{"update:value":e=>!0,input:e=>!0,change:e=>!0,focus:()=>!0,blur:()=>!0},setup(e,{attrs:a,emit:n}){const r=t.computed(()=>{var f;const i=(f=e.opcoes)==null?void 0:f.precisao;return i==null?null:ro(i)}),s=t.computed(()=>r.value===0),h=t.computed(()=>{const i=r.value;return i!==null&&i>0}),o=t.ref(""),l=t.ref(void 0);t.watch(()=>e.value,i=>{i!==l.value&&(o.value=Ce(i,r.value),l.value=i)},{immediate:!0});function u(i){if(h.value){const A=r.value??0,_=ze(i),c=_?Number(_):0,E=Math.pow(10,A),g=_?c/E:null,k=g===null?null:g;l.value=k,n("update:value",k),n("input",k),n("change",k),o.value=Ce(k,A);return}const f=s.value?ze(i):io(i),y=s.value?f:so(f,r.value);let D=null;if(y){const _=(s.value?null:co(y))??lo(y);D=_===null?null:_}l.value=D,n("update:value",D),n("input",D),n("change",D),o.value=Ce(D,r.value)}return{attrs:a,emit:n,displayValue:o,isInteiro:s,onUpdateModelValue:u}}}),mo={class:"eli-entrada__prefixo"},po={class:"eli-entrada__sufixo"};function fo(e,a,n,r,s,h){var o,l,u,i;return t.openBlock(),t.createBlock(_e.VTextField,t.mergeProps({"model-value":e.displayValue,label:(o=e.opcoes)==null?void 0:o.rotulo,placeholder:(l=e.opcoes)==null?void 0:l.placeholder,type:e.isInteiro?"number":"text",inputmode:e.isInteiro?"numeric":"decimal",pattern:e.isInteiro?"[0-9]*":"[0-9.,]*"},e.attrs,{"onUpdate:modelValue":e.onUpdateModelValue,onFocus:a[0]||(a[0]=()=>e.emit("focus")),onBlur:a[1]||(a[1]=()=>e.emit("blur"))}),t.createSlots({_:2},[(u=e.opcoes)!=null&&u.prefixo?{name:"prepend-inner",fn:t.withCtx(()=>[t.createElementVNode("span",mo,t.toDisplayString(e.opcoes.prefixo),1)]),key:"0"}:void 0,(i=e.opcoes)!=null&&i.sufixo?{name:"append-inner",fn:t.withCtx(()=>[t.createElementVNode("span",po,t.toDisplayString(e.opcoes.sufixo),1)]),key:"1"}:void 0]),1040,["model-value","label","placeholder","type","inputmode","pattern","onUpdate:modelValue"])}const ve=F(uo,[["render",fo],["__scopeId","data-v-77cbf216"]]);function bo(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var $e={exports:{}},ho=$e.exports,je;function go(){return je||(je=1,(function(e,a){(function(n,r){e.exports=r()})(ho,(function(){var n=1e3,r=6e4,s=36e5,h="millisecond",o="second",l="minute",u="hour",i="day",f="week",y="month",D="quarter",A="year",_="date",c="Invalid Date",E=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,g=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,k={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(C){var b=["th","st","nd","rd"],d=C%100;return"["+C+(b[(d-20)%10]||b[d]||b[0])+"]"}},H=function(C,b,d){var $=String(C);return!$||$.length>=b?C:""+Array(b+1-$.length).join(d)+C},ie={s:H,z:function(C){var b=-C.utcOffset(),d=Math.abs(b),$=Math.floor(d/60),m=d%60;return(b<=0?"+":"-")+H($,2,"0")+":"+H(m,2,"0")},m:function C(b,d){if(b.date()1)return C(v[0])}else{var T=b.name;Z[T]=b,m=T}return!$&&m&&(W=m),m||!$&&W},M=function(C,b){if(q(C))return C.clone();var d=typeof b=="object"?b:{};return d.date=C,d.args=arguments,new ce(d)},N=ie;N.l=te,N.i=q,N.w=function(C,b){return M(C,{locale:b.$L,utc:b.$u,x:b.$x,$offset:b.$offset})};var ce=(function(){function C(d){this.$L=te(d.locale,null,!0),this.parse(d),this.$x=this.$x||d.x||{},this[ee]=!0}var b=C.prototype;return b.parse=function(d){this.$d=(function($){var m=$.date,S=$.utc;if(m===null)return new Date(NaN);if(N.u(m))return new Date;if(m instanceof Date)return new Date(m);if(typeof m=="string"&&!/Z$/i.test(m)){var v=m.match(E);if(v){var T=v[2]-1||0,O=(v[7]||"0").substring(0,3);return S?new Date(Date.UTC(v[1],T,v[3]||1,v[4]||0,v[5]||0,v[6]||0,O)):new Date(v[1],T,v[3]||1,v[4]||0,v[5]||0,v[6]||0,O)}}return new Date(m)})(d),this.init()},b.init=function(){var d=this.$d;this.$y=d.getFullYear(),this.$M=d.getMonth(),this.$D=d.getDate(),this.$W=d.getDay(),this.$H=d.getHours(),this.$m=d.getMinutes(),this.$s=d.getSeconds(),this.$ms=d.getMilliseconds()},b.$utils=function(){return N},b.isValid=function(){return this.$d.toString()!==c},b.isSame=function(d,$){var m=M(d);return this.startOf($)<=m&&m<=this.endOf($)},b.isAfter=function(d,$){return M(d)!0,input:e=>!0,change:e=>!0,"update:modelValue":e=>!0,alterar:e=>!0,foco:()=>!0,desfoco:()=>!0,focus:()=>!0,blur:()=>!0},setup(e,{emit:a,attrs:n}){const r=t.computed(()=>e.opcoes?e.opcoes:{rotulo:e.rotulo??"Data e hora",placeholder:e.placeholder??"",modo:e.modo??"dataHora",limpavel:e.limpavel,erro:e.erro,mensagensErro:e.mensagensErro,dica:e.dica,dicaPersistente:e.dicaPersistente,densidade:e.densidade,variante:e.variante,min:e.min,max:e.max}),s=t.computed(()=>r.value.modo??"dataHora"),h=t.computed(()=>!!e.desabilitado),o=t.computed(()=>s.value==="data"?"date":"datetime-local");function l(c){return s.value==="data"?Ee(c).format("YYYY-MM-DD"):Ee(c).format("YYYY-MM-DDTHH:mm")}function u(c){return s.value==="data"?Ee(`${c}T00:00`).format():Ee(c).format()}const i=t.computed(()=>e.value!==void 0?e.value??null:e.modelValue),f=t.computed({get:()=>i.value?l(i.value):"",set:c=>{const E=c&&c.length>0?c:null;if(!E){a("update:value",null),a("input",null),a("change",null),a("update:modelValue",null),a("alterar",null);return}const g=u(E);a("update:value",g),a("input",g),a("change",g),a("update:modelValue",g),a("alterar",g)}}),y=t.computed(()=>{const c=r.value.min;if(c)return l(c)}),D=t.computed(()=>{const c=r.value.max;if(c)return l(c)});function A(){a("foco"),a("focus")}function _(){a("desfoco"),a("blur")}return{attrs:n,valor:f,tipoInput:o,minLocal:y,maxLocal:D,opcoesEfetivas:r,desabilitadoEfetivo:h,emitCompatFocus:A,emitCompatBlur:_}}}),Eo={class:"eli-data-hora"};function ko(e,a,n,r,s,h){return t.openBlock(),t.createElementBlock("div",Eo,[t.createVNode(_e.VTextField,t.mergeProps({modelValue:e.valor,"onUpdate:modelValue":a[0]||(a[0]=o=>e.valor=o),type:e.tipoInput,label:e.opcoesEfetivas.rotulo,placeholder:e.opcoesEfetivas.placeholder,disabled:e.desabilitadoEfetivo,clearable:!!e.opcoesEfetivas.limpavel,error:!!e.opcoesEfetivas.erro,"error-messages":e.opcoesEfetivas.mensagensErro,hint:e.opcoesEfetivas.dica,"persistent-hint":!!e.opcoesEfetivas.dicaPersistente,density:e.opcoesEfetivas.densidade??"comfortable",variant:e.opcoesEfetivas.variante??"outlined",min:e.minLocal,max:e.maxLocal},e.attrs,{onFocus:e.emitCompatFocus,onBlur:e.emitCompatBlur}),null,16,["modelValue","type","label","placeholder","disabled","clearable","error","error-messages","hint","persistent-hint","density","variant","min","max","onFocus","onBlur"])])}const Se=F($o,[["render",ko],["__scopeId","data-v-1bfd1be8"]]);function _o(e){return e==="texto"||e==="numero"||e==="dataHora"}function Bo(e){var n,r;const a=(r=(n=e==null?void 0:e.entrada)==null?void 0:n[1])==null?void 0:r.rotulo;return String(a||((e==null?void 0:e.coluna)??"Filtro"))}const Co=t.defineComponent({name:"EliTabelaModalFiltroAvancado",props:{aberto:{type:Boolean,required:!0},filtrosBase:{type:Array,required:!0},modelo:{type:Array,required:!0}},emits:{fechar:()=>!0,limpar:()=>!0,salvar:e=>!0},setup(e,{emit:a}){const n=t.ref([]),r=t.ref(""),s=t.computed(()=>(e.filtrosBase??[]).map(c=>String(c.coluna))),h=t.computed(()=>{const c=new Set(n.value.map(E=>String(E.coluna)));return(e.filtrosBase??[]).filter(E=>!c.has(String(E.coluna)))});function o(c){const E=c==null?void 0:c[0];return E==="numero"?ve:E==="dataHora"?Se:ye}function l(c){return(c==null?void 0:c[1])??{rotulo:""}}function u(c){return(c==null?void 0:c[0])==="numero"?null:""}function i(){var g;const c=e.filtrosBase??[],E=Array.isArray(e.modelo)?e.modelo:[];n.value=E.map(k=>{const H=c.find(q=>String(q.coluna)===String(k.coluna))??c[0],ie=(H==null?void 0:H.entrada)??k.entrada,W=(H==null?void 0:H.coluna)??k.coluna,Z=String((H==null?void 0:H.operador)??"="),ee=k.valor??u(ie);return{coluna:W,operador:Z,entrada:ie,valor:ee}});for(const k of n.value)s.value.includes(String(k.coluna))&&(k.operador=String(((g=c.find(H=>String(H.coluna)===String(k.coluna)))==null?void 0:g.operador)??"="),k.entrada&&!_o(k.entrada[0])&&(k.entrada=["texto",{rotulo:"Valor"}]))}t.watch(()=>[e.aberto,e.filtrosBase,e.modelo],()=>{e.aberto&&i()},{deep:!0,immediate:!0});function f(){if(!r.value)return;const c=(e.filtrosBase??[]).find(E=>String(E.coluna)===String(r.value));c&&(n.value.some(E=>String(E.coluna)===String(c.coluna))||(n.value.push({coluna:c.coluna,entrada:c.entrada,operador:String(c.operador??"="),valor:u(c.entrada)}),r.value=""))}function y(c){n.value.splice(c,1)}function D(){a("fechar")}function A(){a("limpar")}function _(){a("salvar",n.value.map(c=>({coluna:c.coluna,valor:c.valor})))}return{linhas:n,opcoesParaAdicionar:h,colunaParaAdicionar:r,componenteEntrada:o,opcoesEntrada:l,adicionar:f,remover:y,emitFechar:D,emitSalvar:_,emitLimpar:A,rotuloDoFiltro:Bo}}}),vo={class:"eli-tabela-modal-filtro__modal",role:"dialog","aria-modal":"true","aria-label":"Filtro avançado"},So={class:"eli-tabela-modal-filtro__header"},Vo={class:"eli-tabela-modal-filtro__conteudo"},No={key:0,class:"eli-tabela-modal-filtro__vazio"},Ao={key:1,class:"eli-tabela-modal-filtro__lista"},Do={class:"eli-tabela-modal-filtro__entrada"},wo=["onClick"],Mo={class:"eli-tabela-modal-filtro__acoes"},To=["disabled"],Po=["value"],Fo=["disabled"],Oo={class:"eli-tabela-modal-filtro__footer"};function Io(e,a,n,r,s,h){return e.aberto?(t.openBlock(),t.createElementBlock("div",{key:0,class:"eli-tabela-modal-filtro__overlay",role:"presentation",onClick:a[6]||(a[6]=t.withModifiers((...o)=>e.emitFechar&&e.emitFechar(...o),["self"]))},[t.createElementVNode("div",vo,[t.createElementVNode("header",So,[a[7]||(a[7]=t.createElementVNode("h3",{class:"eli-tabela-modal-filtro__titulo"},"Filtro avançado",-1)),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__fechar","aria-label":"Fechar",onClick:a[0]||(a[0]=(...o)=>e.emitFechar&&e.emitFechar(...o))}," × ")]),t.createElementVNode("div",Vo,[e.filtrosBase.length?(t.openBlock(),t.createElementBlock("div",Ao,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.linhas,(o,l)=>(t.openBlock(),t.createElementBlock("div",{key:String(o.coluna),class:"eli-tabela-modal-filtro__linha"},[t.createElementVNode("div",Do,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.componenteEntrada(o.entrada)),{value:o.valor,"onUpdate:value":u=>o.valor=u,opcoes:e.opcoesEntrada(o.entrada),density:"compact"},null,40,["value","onUpdate:value","opcoes"]))]),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__remover",title:"Remover","aria-label":"Remover",onClick:u=>e.remover(l)}," × ",8,wo)]))),128))])):(t.openBlock(),t.createElementBlock("div",No," Nenhum filtro configurado na tabela. ")),t.createElementVNode("div",Mo,[t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":a[1]||(a[1]=o=>e.colunaParaAdicionar=o),class:"eli-tabela-modal-filtro__select",disabled:!e.opcoesParaAdicionar.length},[a[8]||(a[8]=t.createElementVNode("option",{disabled:"",value:""},"Selecione um filtro…",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.opcoesParaAdicionar,o=>(t.openBlock(),t.createElementBlock("option",{key:String(o.coluna),value:String(o.coluna)},t.toDisplayString(e.rotuloDoFiltro(o)),9,Po))),128))],8,To),[[t.vModelSelect,e.colunaParaAdicionar]]),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__botao",onClick:a[2]||(a[2]=(...o)=>e.adicionar&&e.adicionar(...o)),disabled:!e.colunaParaAdicionar}," Adicionar ",8,Fo)])]),t.createElementVNode("footer",Oo,[t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__botao eli-tabela-modal-filtro__botao--sec",onClick:a[3]||(a[3]=(...o)=>e.emitLimpar&&e.emitLimpar(...o))}," Limpar "),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__botao eli-tabela-modal-filtro__botao--sec",onClick:a[4]||(a[4]=(...o)=>e.emitFechar&&e.emitFechar(...o))}," Cancelar "),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__botao eli-tabela-modal-filtro__botao--prim",onClick:a[5]||(a[5]=(...o)=>e.emitSalvar&&e.emitSalvar(...o))}," Aplicar ")])])])):t.createCommentVNode("",!0)}const qo=F(Co,[["render",Io],["__scopeId","data-v-ae32fe4c"]]),Lo="eli:tabela";function He(e){return`${Lo}:${e}:colunas`}function Ue(e){if(!e||typeof e!="object")return{visiveis:[],invisiveis:[]};const a=e,n=Array.isArray(a.visiveis)?a.visiveis.filter(s=>typeof s=="string"):[],r=Array.isArray(a.invisiveis)?a.invisiveis.filter(s=>typeof s=="string"):[];return{visiveis:n,invisiveis:r}}function Ye(e){try{const a=window.localStorage.getItem(He(e));return a?Ue(JSON.parse(a)):{visiveis:[],invisiveis:[]}}catch{return{visiveis:[],invisiveis:[]}}}function zo(e,a){try{window.localStorage.setItem(He(e),JSON.stringify(Ue(a)))}catch{}}function Ve(e){return`eli_tabela:${e}:filtro_avancado`}function Re(e){try{const a=localStorage.getItem(Ve(e));if(!a)return[];const n=JSON.parse(a);return Array.isArray(n)?n:[]}catch{return[]}}function jo(e,a){try{localStorage.setItem(Ve(e),JSON.stringify(a??[]))}catch{}}function Ho(e){try{localStorage.removeItem(Ve(e))}catch{}}const Uo=t.defineComponent({name:"EliTabela",inheritAttrs:!1,components:{EliTabelaCabecalho:Ot,EliTabelaEstados:Ut,EliTabelaDebug:Wt,EliTabelaHead:oa,EliTabelaBody:wa,EliTabelaMenuAcoes:Ia,EliTabelaPaginacao:Ra,EliTabelaModalColunas:no,EliTabelaModalFiltroAvancado:qo},props:{tabela:{type:Object,required:!0}},setup(e){const n=t.ref(!1),r=t.ref(null),s=t.ref([]),h=t.ref(0),o=t.ref([]),l=t.ref(null),u=t.ref(null),i=t.ref({top:0,left:0}),f=t.ref(""),y=t.ref(1),D=t.ref(null),A=t.ref("asc"),_=t.ref(!1),c=t.ref(Re(e.tabela.nome));function E(){_.value=!0}function g(){_.value=!1}function k(){c.value=[],Ho(e.tabela.nome),_.value=!1,y.value!==1&&(y.value=1)}function H(p){c.value=p??[],jo(e.tabela.nome,p??[]),_.value=!1,y.value!==1&&(y.value=1)}const ie=t.computed(()=>{const p=e.tabela.filtroAvancado??[];return(c.value??[]).filter(B=>B&&B.coluna!==void 0).map(B=>{const V=p.find(w=>String(w.coluna)===String(B.coluna));return V?{coluna:String(V.coluna),operador:V.operador,valor:B.valor}:null}).filter(Boolean)}),W=t.computed(()=>e.tabela),Z=t.computed(()=>!!e.tabela.mostrarCaixaDeBusca),ee=t.computed(()=>e.tabela.acoesTabela??[]),q=t.computed(()=>ee.value.length>0),te=t.ref(!1),M=t.ref(Ye(e.tabela.nome)),N=t.ref({}),ce=t.computed(()=>e.tabela.colunas.map(p=>p.rotulo)),be=t.computed(()=>{var X,K;const p=e.tabela.colunas,V=(((X=M.value.visiveis)==null?void 0:X.length)??0)>0||(((K=M.value.invisiveis)==null?void 0:K.length)??0)>0?M.value.invisiveis??[]:p.filter(P=>P.visivel===!1).map(P=>P.rotulo),w=new Set(V),Y=p.filter(P=>w.has(P.rotulo)),J=V,x=new Map;for(const P of Y)x.has(P.rotulo)||x.set(P.rotulo,P);const G=[];for(const P of J){const ae=x.get(P);ae&&G.push(ae)}for(const P of Y)G.includes(P)||G.push(P);return G}),C=t.computed(()=>be.value.length>0),b=t.computed(()=>{var P,ae;const p=e.tabela.colunas,B=ce.value,V=(((P=M.value.visiveis)==null?void 0:P.length)??0)>0||(((ae=M.value.invisiveis)==null?void 0:ae.length)??0)>0,w=V?M.value.invisiveis??[]:e.tabela.colunas.filter(I=>I.visivel===!1).map(I=>I.rotulo),Y=new Set(w),J=B.filter(I=>!Y.has(I)),x=new Set(J),G=V?M.value.visiveis??[]:[],X=[];for(const I of G)x.has(I)&&X.push(I);for(const I of J)X.includes(I)||X.push(I);const K=new Map;for(const I of p)K.has(I.rotulo)||K.set(I.rotulo,I);return X.map(I=>K.get(I)).filter(Boolean)});function d(){te.value=!0}function $(){te.value=!1}function m(p){M.value=p,zo(e.tabela.nome,p),te.value=!1,N.value={}}function S(p){const B=!!N.value[p];N.value={...N.value,[p]:!B}}const v=t.computed(()=>{const p=e.tabela.registros_por_consulta;return typeof p=="number"&&p>0?Math.floor(p):10});function T(p){const B=(f.value??"").trim().toLowerCase();return B?p.filter(V=>JSON.stringify(V).toLowerCase().includes(B)):p}function O(p,B,V){switch(p){case"=":return B==V;case"!=":return B!=V;case">":return Number(B)>Number(V);case">=":return Number(B)>=Number(V);case"<":return Number(B)Y.trim()).filter(Boolean)).includes(String(B));case"isNull":return B==null||B==="";default:return!0}}function z(p){const B=ie.value;return B.length?p.filter(V=>B.every(w=>{const Y=V==null?void 0:V[w.coluna];return O(String(w.operador),Y,w.valor)})):p}const U=t.computed(()=>{const p=s.value??[];return z(T(p))}),R=t.computed(()=>U.value.length),oe=t.computed(()=>{const p=v.value;if(!p||p<=0)return 1;const B=R.value;return B?Math.max(1,Math.ceil(B/p)):1}),ne=t.computed(()=>{const p=Math.max(1,v.value),B=(y.value-1)*p;return U.value.slice(B,B+p)}),de=t.computed(()=>(e.tabela.acoesLinha??[]).length>0),re=t.computed(()=>(e.tabela.filtroAvancado??[]).length>0);let j=0;function Q(p){var G,X,K,P,ae,I;const B=p.getBoundingClientRect(),V=8,w=((K=(X=(G=u.value)==null?void 0:G.menuEl)==null?void 0:X.value)==null?void 0:K.offsetHeight)??0,Y=((I=(ae=(P=u.value)==null?void 0:P.menuEl)==null?void 0:ae.value)==null?void 0:I.offsetWidth)??180;let J=B.bottom+V;const x=B.right-Y;w&&J+w>window.innerHeight-V&&(J=B.top-V-w),i.value={top:Math.max(V,Math.round(J)),left:Math.max(V,Math.round(x))}}function se(p){var V,w;if(l.value===null)return;const B=p.target;(w=(V=u.value)==null?void 0:V.menuEl)!=null&&w.value&&u.value.menuEl.value.contains(B)||(l.value=null)}function pe(p){if(p){if(D.value===p){A.value=A.value==="asc"?"desc":"asc",ue();return}D.value=p,A.value="asc",y.value!==1?y.value=1:ue()}}function Zo(p){f.value!==p&&(f.value=p,y.value!==1?y.value=1:ue())}function Go(p){const B=Math.min(Math.max(1,p),oe.value);B!==y.value&&(y.value=B)}function We(p){const B=e.tabela.acoesLinha??[],V=o.value[p]??[];return B.map((w,Y)=>{const J=w.exibir===void 0?!0:typeof w.exibir=="boolean"?w.exibir:!1;return{acao:w,indice:Y,visivel:V[Y]??J}}).filter(w=>w.visivel)}function Ze(p){return We(p).length>0}function Xo(p,B){if(!Ze(p))return;if(l.value===p){l.value=null;return}l.value=p;const V=(B==null?void 0:B.currentTarget)??null;V&&(Q(V),requestAnimationFrame(()=>Q(V)))}async function ue(){var Y;const p=++j;n.value=!0,r.value=null,o.value=[],l.value=null,N.value={};const B=Math.max(1,v.value),w={offSet:0,limit:999999};D.value&&(w.coluna_ordem=D.value,w.direcao_ordem=A.value);try{const J=e.tabela,x=await J.consulta(w);if(p!==j)return;if(x.cod!==we.sucesso){s.value=[],h.value=0,r.value=x.mensagem;return}const G=((Y=x.valor)==null?void 0:Y.valores)??[],X=G.length;s.value=G,h.value=X;const K=Math.max(1,Math.ceil((R.value||0)/B));if(y.value>K){y.value=K;return}const P=J.acoesLinha??[];if(!P.length){o.value=[];return}const ae=G.map(()=>P.map(he=>he.exibir===void 0?!0:typeof he.exibir=="boolean"?he.exibir:!1));o.value=ae;const I=await Promise.all(G.map(async he=>Promise.all(P.map(async ke=>{if(ke.exibir===void 0)return!0;if(typeof ke.exibir=="boolean")return ke.exibir;try{const Ko=ke.exibir(he);return!!await Promise.resolve(Ko)}catch{return!1}}))));p===j&&(o.value=I)}catch(J){if(p!==j)return;s.value=[],h.value=0,r.value=J instanceof Error?J.message:"Erro ao carregar dados."}finally{p===j&&(n.value=!1)}}return t.onMounted(()=>{document.addEventListener("click",se),ue()}),t.onBeforeUnmount(()=>{document.removeEventListener("click",se)}),t.watch(()=>e.tabela.mostrarCaixaDeBusca,p=>{!p&&f.value&&(f.value="",y.value!==1?y.value=1:ue())}),t.watch(y,(p,B)=>{}),t.watch(()=>e.tabela,()=>{l.value=null,D.value=null,A.value="asc",f.value="",te.value=!1,_.value=!1,M.value=Ye(e.tabela.nome),c.value=Re(e.tabela.nome),N.value={},y.value!==1?y.value=1:ue()}),t.watch(()=>e.tabela.registros_por_consulta,()=>{y.value!==1?y.value=1:ue()}),t.watch(s,()=>{l.value=null,N.value={}}),{isDev:!1,tabela:W,carregando:n,erro:r,linhas:s,linhasPaginadas:ne,quantidadeFiltrada:R,quantidade:h,menuAberto:l,valorBusca:f,paginaAtual:y,colunaOrdenacao:D,direcaoOrdenacao:A,totalPaginas:oe,exibirBusca:Z,exibirFiltroAvancado:re,acoesCabecalho:ee,temAcoesCabecalho:q,temAcoes:de,colunasEfetivas:b,rotulosColunas:ce,modalColunasAberto:te,configColunas:M,temColunasInvisiveis:C,colunasInvisiveisEfetivas:be,linhasExpandidas:N,abrirModalColunas:d,abrirModalFiltro:E,fecharModalColunas:$,salvarModalColunas:m,modalFiltroAberto:_,filtrosUi:c,salvarFiltrosAvancados:H,limparFiltrosAvancados:k,fecharModalFiltro:g,alternarLinhaExpandida:S,alternarOrdenacao:pe,atualizarBusca:Zo,irParaPagina:Go,acoesDisponiveisPorLinha:We,possuiAcoes:Ze,toggleMenu:Xo,menuPopup:u,menuPopupPos:i}}}),Yo={class:"eli-tabela"},Ro={class:"eli-tabela__table"};function Jo(e,a,n,r,s,h){const o=t.resolveComponent("EliTabelaDebug"),l=t.resolveComponent("EliTabelaEstados"),u=t.resolveComponent("EliTabelaCabecalho"),i=t.resolveComponent("EliTabelaModalColunas"),f=t.resolveComponent("EliTabelaModalFiltroAvancado"),y=t.resolveComponent("EliTabelaHead"),D=t.resolveComponent("EliTabelaBody"),A=t.resolveComponent("EliTabelaMenuAcoes"),_=t.resolveComponent("EliTabelaPaginacao");return t.openBlock(),t.createElementBlock("div",Yo,[t.createVNode(o,{isDev:e.isDev,menuAberto:e.menuAberto,menuPopupPos:e.menuPopupPos},null,8,["isDev","menuAberto","menuPopupPos"]),e.carregando||e.erro||!e.linhas.length?(t.openBlock(),t.createBlock(l,{key:0,carregando:e.carregando,erro:e.erro,mensagemVazio:e.tabela.mensagemVazio},null,8,["carregando","erro","mensagemVazio"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[e.exibirBusca||e.temAcoesCabecalho?(t.openBlock(),t.createBlock(u,{key:0,exibirBusca:e.exibirBusca,exibirBotaoFiltroAvancado:e.exibirFiltroAvancado,valorBusca:e.valorBusca,acoesCabecalho:e.acoesCabecalho,onBuscar:e.atualizarBusca,onColunas:e.abrirModalColunas,onFiltroAvancado:e.abrirModalFiltro},null,8,["exibirBusca","exibirBotaoFiltroAvancado","valorBusca","acoesCabecalho","onBuscar","onColunas","onFiltroAvancado"])):t.createCommentVNode("",!0),t.createVNode(i,{aberto:e.modalColunasAberto,rotulosColunas:e.rotulosColunas,configInicial:e.configColunas,colunas:e.tabela.colunas,onFechar:e.fecharModalColunas,onSalvar:e.salvarModalColunas},null,8,["aberto","rotulosColunas","configInicial","colunas","onFechar","onSalvar"]),t.createVNode(f,{aberto:e.modalFiltroAberto,filtrosBase:e.tabela.filtroAvancado??[],modelo:e.filtrosUi,onFechar:e.fecharModalFiltro,onLimpar:e.limparFiltrosAvancados,onSalvar:e.salvarFiltrosAvancados},null,8,["aberto","filtrosBase","modelo","onFechar","onLimpar","onSalvar"]),t.createElementVNode("table",Ro,[t.createVNode(y,{colunas:e.colunasEfetivas,temAcoes:e.temAcoes,temColunasInvisiveis:e.temColunasInvisiveis,colunaOrdenacao:e.colunaOrdenacao,direcaoOrdenacao:e.direcaoOrdenacao,onAlternarOrdenacao:e.alternarOrdenacao},null,8,["colunas","temAcoes","temColunasInvisiveis","colunaOrdenacao","direcaoOrdenacao","onAlternarOrdenacao"]),t.createVNode(D,{colunas:e.colunasEfetivas,colunasInvisiveis:e.colunasInvisiveisEfetivas,temColunasInvisiveis:e.temColunasInvisiveis,linhasExpandidas:e.linhasExpandidas,linhas:e.linhasPaginadas,temAcoes:e.temAcoes,menuAberto:e.menuAberto,possuiAcoes:e.possuiAcoes,toggleMenu:e.toggleMenu,alternarLinhaExpandida:e.alternarLinhaExpandida},null,8,["colunas","colunasInvisiveis","temColunasInvisiveis","linhasExpandidas","linhas","temAcoes","menuAberto","possuiAcoes","toggleMenu","alternarLinhaExpandida"])]),t.createVNode(A,{ref:"menuPopup",menuAberto:e.menuAberto,posicao:e.menuPopupPos,acoes:e.menuAberto===null?[]:e.acoesDisponiveisPorLinha(e.menuAberto),linha:e.menuAberto===null?null:e.linhasPaginadas[e.menuAberto],onExecutar:a[0]||(a[0]=({acao:c,linha:E})=>{e.menuAberto=null,c.acao(E)})},null,8,["menuAberto","posicao","acoes","linha"]),e.totalPaginas>1&&e.quantidadeFiltrada>0?(t.openBlock(),t.createBlock(_,{key:1,pagina:e.paginaAtual,totalPaginas:e.totalPaginas,maximoBotoes:e.tabela.maximo_botoes_paginacao,onAlterar:e.irParaPagina},null,8,["pagina","totalPaginas","maximoBotoes","onAlterar"])):t.createCommentVNode("",!0)],64))])}const Je=F(Uo,[["render",Jo]]),Wo={install(e){e.component("EliOlaMundo",Ae),e.component("EliBotao",Be),e.component("EliBadge",ge),e.component("EliCartao",De),e.component("EliTabela",Je),e.component("EliEntradaTexto",ye),e.component("EliEntradaNumero",ve),e.component("EliEntradaDataHora",Se)}};L.EliBadge=ge,L.EliBotao=Be,L.EliCartao=De,L.EliEntradaDataHora=Se,L.EliEntradaNumero=ve,L.EliEntradaTexto=ye,L.EliOlaMundo=Ae,L.EliTabela=Je,L.default=Wo,Object.defineProperties(L,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})})); + */const wt=pe("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]),Tt=t.defineComponent({name:"EliTabelaCaixaDeBusca",components:{Search:wt},props:{modelo:{type:String,required:!1,default:""}},emits:{buscar(e){return typeof e=="string"}},setup(e,{emit:a}){const n=t.ref(e.modelo??"");t.watch(()=>e.modelo,s=>{s!==void 0&&s!==n.value&&(n.value=s)});function r(){a("buscar",n.value.trim())}return{texto:n,emitirBusca:r}}}),Pt={class:"eli-tabela__busca"},Ft={class:"eli-tabela__busca-input-wrapper"};function Ot(e,a,n,r,s,m){const o=t.resolveComponent("Search");return t.openBlock(),t.createElementBlock("div",Pt,[t.createElementVNode("div",Ft,[t.withDirectives(t.createElementVNode("input",{id:"eli-tabela-busca","onUpdate:modelValue":a[0]||(a[0]=l=>e.texto=l),type:"search",class:"eli-tabela__busca-input",placeholder:"Digite termos para filtrar",onKeyup:a[1]||(a[1]=t.withKeys((...l)=>e.emitirBusca&&e.emitirBusca(...l),["enter"]))},null,544),[[t.vModelText,e.texto]]),t.createElementVNode("button",{type:"button",class:"eli-tabela__busca-botao","aria-label":"Buscar",title:"Buscar",onClick:a[2]||(a[2]=(...l)=>e.emitirBusca&&e.emitirBusca(...l))},[t.createVNode(o,{class:"eli-tabela__busca-botao-icone",size:16,"stroke-width":2,"aria-hidden":"true"})])])])}const qt=P(Tt,[["render",Ot],["__scopeId","data-v-341415d1"]]),It=t.defineComponent({name:"EliTabelaCabecalho",components:{EliTabelaCaixaDeBusca:qt},props:{exibirBusca:{type:Boolean,required:!0},exibirBotaoColunas:{type:Boolean,required:!1,default:!0},exibirBotaoFiltroAvancado:{type:Boolean,required:!1,default:!1},valorBusca:{type:String,required:!0},acoesCabecalho:{type:Array,required:!0}},emits:{buscar(e){return typeof e=="string"},colunas(){return!0},filtroAvancado(){return!0}},setup(e,{emit:a}){const n=t.computed(()=>e.acoesCabecalho.length>0);function r(o){a("buscar",o)}function s(){a("colunas")}function m(){a("filtroAvancado")}return{temAcoesCabecalho:n,emitBuscar:r,emitColunas:s,emitFiltroAvancado:m}}}),Lt={class:"eli-tabela__cabecalho"},zt={key:0,class:"eli-tabela__busca-grupo"},jt={key:1,class:"eli-tabela__acoes-cabecalho"},Ht=["onClick"],Ut={class:"eli-tabela__acoes-cabecalho-rotulo"};function Yt(e,a,n,r,s,m){const o=t.resolveComponent("EliTabelaCaixaDeBusca");return t.openBlock(),t.createElementBlock("div",Lt,[e.exibirBusca?(t.openBlock(),t.createElementBlock("div",zt,[e.exibirBotaoColunas?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"eli-tabela__acoes-cabecalho-botao eli-tabela__acoes-cabecalho-botao--colunas",onClick:a[0]||(a[0]=(...l)=>e.emitColunas&&e.emitColunas(...l))}," Colunas ")):t.createCommentVNode("",!0),e.exibirBotaoFiltroAvancado?(t.openBlock(),t.createElementBlock("button",{key:1,type:"button",class:"eli-tabela__acoes-cabecalho-botao eli-tabela__acoes-cabecalho-botao--filtro",onClick:a[1]||(a[1]=(...l)=>e.emitFiltroAvancado&&e.emitFiltroAvancado(...l))}," Filtro ")):t.createCommentVNode("",!0),t.createVNode(o,{modelo:e.valorBusca,onBuscar:e.emitBuscar},null,8,["modelo","onBuscar"])])):t.createCommentVNode("",!0),e.temAcoesCabecalho?(t.openBlock(),t.createElementBlock("div",jt,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.acoesCabecalho,(l,u)=>(t.openBlock(),t.createElementBlock("button",{key:`${l.rotulo}-${u}`,type:"button",class:"eli-tabela__acoes-cabecalho-botao",style:t.normalizeStyle(l.cor?{backgroundColor:l.cor,color:"#fff"}:void 0),onClick:l.acao},[l.icone?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(l.icone),{key:0,class:"eli-tabela__acoes-cabecalho-icone",size:16,"stroke-width":2})):t.createCommentVNode("",!0),t.createElementVNode("span",Ut,t.toDisplayString(l.rotulo),1)],12,Ht))),128))])):t.createCommentVNode("",!0)])}const Rt=P(It,[["render",Yt],["__scopeId","data-v-17166105"]]),Jt=t.defineComponent({name:"EliTabelaEstados",props:{carregando:{type:Boolean,required:!0},erro:{type:String,required:!0},mensagemVazio:{type:String,required:!1,default:void 0}}}),Wt={key:0,class:"eli-tabela eli-tabela--carregando","aria-busy":"true"},Zt={key:1,class:"eli-tabela eli-tabela--erro",role:"alert"},Gt={class:"eli-tabela__erro-mensagem"},Xt={key:2,class:"eli-tabela eli-tabela--vazio"};function Kt(e,a,n,r,s,m){return e.carregando?(t.openBlock(),t.createElementBlock("div",Wt," Carregando... ")):e.erro?(t.openBlock(),t.createElementBlock("div",Zt,[a[0]||(a[0]=t.createElementVNode("div",{class:"eli-tabela__erro-titulo"},"Erro",-1)),t.createElementVNode("div",Gt,t.toDisplayString(e.erro),1)])):(t.openBlock(),t.createElementBlock("div",Xt,t.toDisplayString(e.mensagemVazio??"Nenhum registro encontrado."),1))}const Qt=P(Jt,[["render",Kt]]),xt=t.defineComponent({name:"EliTabelaDebug",props:{isDev:{type:Boolean,required:!0},menuAberto:{type:Number,required:!0},menuPopupPos:{type:Object,required:!0}}}),ea={key:0,style:{position:"fixed",left:"8px",bottom:"8px","z-index":"999999",background:"rgba(185,28,28,0.9)",color:"#fff",padding:"6px 10px","border-radius":"8px","font-size":"12px","max-width":"500px"}};function ta(e,a,n,r,s,m){return e.isDev?(t.openBlock(),t.createElementBlock("div",ea,[a[0]||(a[0]=t.createElementVNode("div",null,[t.createElementVNode("b",null,"EliTabela debug")],-1)),t.createElementVNode("div",null,"menuAberto: "+t.toDisplayString(e.menuAberto),1),t.createElementVNode("div",null,"menuPos: top="+t.toDisplayString(e.menuPopupPos.top)+", left="+t.toDisplayString(e.menuPopupPos.left),1)])):t.createCommentVNode("",!0)}const aa=P(xt,[["render",ta]]),oa=t.defineComponent({name:"EliTabelaHead",components:{ArrowUp:qe,ArrowDown:Oe},props:{colunas:{type:Array,required:!0},temAcoes:{type:Boolean,required:!0},temColunasInvisiveis:{type:Boolean,required:!0},colunaOrdenacao:{type:String,required:!0},direcaoOrdenacao:{type:String,required:!0}},emits:{alternarOrdenacao(e){return typeof e=="string"&&e.length>0}},setup(e,{emit:a}){function n(s){return(s==null?void 0:s.coluna_ordem)!==void 0&&(s==null?void 0:s.coluna_ordem)!==null}function r(s){a("alternarOrdenacao",s)}return{ArrowUp:qe,ArrowDown:Oe,isOrdenavel:n,emitAlternarOrdenacao:r}}}),na={class:"eli-tabela__thead"},ra={class:"eli-tabela__tr eli-tabela__tr--header"},la={key:0,class:"eli-tabela__th eli-tabela__th--expander",scope:"col"},ia=["onClick"],sa={class:"eli-tabela__th-texto"},ca={key:1,class:"eli-tabela__th-label"},da={key:1,class:"eli-tabela__th eli-tabela__th--acoes",scope:"col"};function ua(e,a,n,r,s,m){const o=t.resolveComponent("ArrowUp");return t.openBlock(),t.createElementBlock("thead",na,[t.createElementVNode("tr",ra,[e.temColunasInvisiveis?(t.openBlock(),t.createElementBlock("th",la)):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.colunas,(l,u)=>(t.openBlock(),t.createElementBlock("th",{key:`th-${u}`,class:t.normalizeClass(["eli-tabela__th",[e.isOrdenavel(l)?"eli-tabela__th--ordenavel":void 0]]),scope:"col"},[e.isOrdenavel(l)?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:t.normalizeClass(["eli-tabela__th-botao",[e.colunaOrdenacao===String(l.coluna_ordem)?"eli-tabela__th-botao--ativo":void 0]]),onClick:i=>e.emitAlternarOrdenacao(String(l.coluna_ordem))},[t.createElementVNode("span",sa,t.toDisplayString(l.rotulo),1),e.colunaOrdenacao===String(l.coluna_ordem)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.direcaoOrdenacao==="asc"?e.ArrowUp:e.ArrowDown),{key:0,class:"eli-tabela__th-icone",size:16,"stroke-width":2,"aria-hidden":"true"})):(t.openBlock(),t.createBlock(o,{key:1,class:"eli-tabela__th-icone eli-tabela__th-icone--oculto",size:16,"stroke-width":2,"aria-hidden":"true"}))],10,ia)):(t.openBlock(),t.createElementBlock("span",ca,t.toDisplayString(l.rotulo),1))],2))),128)),e.temAcoes?(t.openBlock(),t.createElementBlock("th",da," Ações ")):t.createCommentVNode("",!0)])])}const ma=P(oa,[["render",ua]]),pa=t.defineComponent({name:"EliTabelaCelulaTextoSimples",components:{},props:{dados:{type:Object}},data(){return{}},methods:{},setup({dados:e}){return{dados:e}}}),fa={key:1};function ba(e,a,n,r,s,m){var o,l,u;return(o=e.dados)!=null&&o.acao?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"eli-tabela__celula-link",onClick:a[0]||(a[0]=t.withModifiers(i=>e.dados.acao(),["stop","prevent"]))},t.toDisplayString((l=e.dados)==null?void 0:l.texto),1)):(t.openBlock(),t.createElementBlock("span",fa,t.toDisplayString((u=e.dados)==null?void 0:u.texto),1))}const ha=P(pa,[["render",ba],["__scopeId","data-v-7a629ffa"]]),ga=t.defineComponent({name:"EliTabelaCelulaTextoTruncado",props:{dados:{type:Object}},setup({dados:e}){return{dados:e}}}),ya=["title"],$a=["title"];function Ea(e,a,n,r,s,m){var o,l,u,i,d;return(o=e.dados)!=null&&o.acao?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"eli-tabela__texto-truncado eli-tabela__celula-link",title:(l=e.dados)==null?void 0:l.texto,onClick:a[0]||(a[0]=t.withModifiers(b=>e.dados.acao(),["stop","prevent"]))},t.toDisplayString((u=e.dados)==null?void 0:u.texto),9,ya)):(t.openBlock(),t.createElementBlock("span",{key:1,class:"eli-tabela__texto-truncado",title:(i=e.dados)==null?void 0:i.texto},t.toDisplayString((d=e.dados)==null?void 0:d.texto),9,$a))}const ka=P(ga,[["render",Ea],["__scopeId","data-v-74854889"]]),Ba=t.defineComponent({name:"EliTabelaCelulaNumero",components:{},props:{dados:{type:Object}},setup({dados:e}){const a=t.computed(()=>{var l,u;const n=String(e==null?void 0:e.numero).replace(".",","),r=(l=e==null?void 0:e.prefixo)==null?void 0:l.trim(),s=(u=e==null?void 0:e.sufixo)==null?void 0:u.trim(),m=r?`${r} `:"",o=s?` ${s}`:"";return`${m}${n}${o}`});return{dados:e,textoNumero:a}}}),Ca={key:1};function _a(e,a,n,r,s,m){var o;return(o=e.dados)!=null&&o.acao?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"eli-tabela__celula-link",onClick:a[0]||(a[0]=t.withModifiers(l=>e.dados.acao(),["stop","prevent"]))},t.toDisplayString(e.textoNumero),1)):(t.openBlock(),t.createElementBlock("span",Ca,t.toDisplayString(e.textoNumero),1))}const va=P(Ba,[["render",_a],["__scopeId","data-v-69c890c4"]]),Sa=t.defineComponent({name:"EliTabelaCelulaTags",components:{VChip:_e.VChip},props:{dados:{type:Object,required:!1}},setup({dados:e}){return{dados:e}}}),Va={class:"eli-tabela__celula-tags"};function Na(e,a,n,r,s,m){var o;return t.openBlock(),t.createElementBlock("div",Va,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(((o=e.dados)==null?void 0:o.opcoes)??[],(l,u)=>(t.openBlock(),t.createBlock(nt.VChip,{key:u,class:"eli-tabela__celula-tag",size:"small",variant:"tonal",color:l.cor,clickable:!!l.acao,onClick:t.withModifiers(i=>{var d;return(d=l.acao)==null?void 0:d.call(l)},["stop","prevent"])},{default:t.withCtx(()=>[l.icone?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(l.icone),{key:0,class:"eli-tabela__celula-tag-icone",size:14})):t.createCommentVNode("",!0),t.createElementVNode("span",null,t.toDisplayString(l.rotulo),1)]),_:2},1032,["color","clickable","onClick"]))),128))])}const Da=P(Sa,[["render",Na],["__scopeId","data-v-a9c83dbe"]]);function ze(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ee={exports:{}},Aa=Ee.exports,je;function Ma(){return je||(je=1,(function(e,a){(function(n,r){e.exports=r()})(Aa,(function(){var n=1e3,r=6e4,s=36e5,m="millisecond",o="second",l="minute",u="hour",i="day",d="week",b="month",N="quarter",S="year",$="date",c="Invalid Date",E=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,k={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(_){var g=["th","st","nd","rd"],p=_%100;return"["+_+(g[(p-20)%10]||g[p]||g[0])+"]"}},j=function(_,g,p){var B=String(_);return!B||B.length>=g?_:""+Array(g+1-B.length).join(p)+_},G={s:j,z:function(_){var g=-_.utcOffset(),p=Math.abs(g),B=Math.floor(p/60),f=p%60;return(g<=0?"+":"-")+j(B,2,"0")+":"+j(f,2,"0")},m:function _(g,p){if(g.date()1)return _(v[0])}else{var T=g.name;H[T]=g,f=T}return!B&&f&&(I=f),f||!B&&I},w=function(_,g){if(O(_))return _.clone();var p=typeof g=="object"?g:{};return p.date=_,p.args=arguments,new de(p)},A=G;A.l=ae,A.i=O,A.w=function(_,g){return w(_,{locale:g.$L,utc:g.$u,x:g.$x,$offset:g.$offset})};var de=(function(){function _(p){this.$L=ae(p.locale,null,!0),this.parse(p),this.$x=this.$x||p.x||{},this[X]=!0}var g=_.prototype;return g.parse=function(p){this.$d=(function(B){var f=B.date,V=B.utc;if(f===null)return new Date(NaN);if(A.u(f))return new Date;if(f instanceof Date)return new Date(f);if(typeof f=="string"&&!/Z$/i.test(f)){var v=f.match(E);if(v){var T=v[2]-1||0,L=(v[7]||"0").substring(0,3);return V?new Date(Date.UTC(v[1],T,v[3]||1,v[4]||0,v[5]||0,v[6]||0,L)):new Date(v[1],T,v[3]||1,v[4]||0,v[5]||0,v[6]||0,L)}}return new Date(f)})(p),this.init()},g.init=function(){var p=this.$d;this.$y=p.getFullYear(),this.$M=p.getMonth(),this.$D=p.getDate(),this.$W=p.getDay(),this.$H=p.getHours(),this.$m=p.getMinutes(),this.$s=p.getSeconds(),this.$ms=p.getMilliseconds()},g.$utils=function(){return A},g.isValid=function(){return this.$d.toString()!==c},g.isSame=function(p,B){var f=w(p);return this.startOf(B)<=f&&f<=this.endOf(B)},g.isAfter=function(p,B){return w(p)0,H<=I.r||!I.r){H<=1&&G>0&&(I=k[G-1]);var X=y[I.l];S&&(H=S(""+H)),c=typeof X=="string"?X.replace("%d",H):X(H,d,I.l,E);break}}if(d)return c;var O=E?y.future:y.past;return typeof O=="function"?O(c):O.replace("%s",c)},m.to=function(i,d){return l(i,d,this,!0)},m.from=function(i,d){return l(i,d,this)};var u=function(i){return i.$u?s.utc():s()};m.toNow=function(i){return this.to(u(this),i)},m.fromNow=function(i){return this.from(u(this),i)}}}))})(ke)),ke.exports}var Fa=Pa();const Oa=ze(Fa);se.extend(Oa);const qa=t.defineComponent({name:"EliTabelaCelulaData",props:{dados:{type:Object,required:!1}},setup({dados:e}){const a=t.computed(()=>{const n=e==null?void 0:e.valor;if(!n)return"";const r=(e==null?void 0:e.formato)??"data";return r==="relativo"?se(n).fromNow():r==="data_hora"?se(n).format("DD/MM/YYYY HH:mm"):se(n).format("DD/MM/YYYY")});return{dados:e,textoData:a}}}),Ia={key:1};function La(e,a,n,r,s,m){var o;return(o=e.dados)!=null&&o.acao?(t.openBlock(),t.createElementBlock("button",{key:0,type:"button",class:"eli-tabela__celula-link",onClick:a[0]||(a[0]=t.withModifiers(l=>e.dados.acao(),["stop","prevent"]))},t.toDisplayString(e.textoData),1)):(t.openBlock(),t.createElementBlock("span",Ia,t.toDisplayString(e.textoData),1))}const za={textoSimples:ha,textoTruncado:ka,numero:va,tags:Da,data:P(qa,[["render",La],["__scopeId","data-v-2b88bbb2"]])},ja=t.defineComponent({name:"EliTabelaCelula",props:{celula:{type:Array,required:!0}},setup(e){const a=t.computed(()=>e.celula[0]),n=t.computed(()=>e.celula[1]),r=t.computed(()=>za[a.value]),s=t.computed(()=>n.value);return{Componente:r,dadosParaComponente:s}}});function Ha(e,a,n,r,s,m){return t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.Componente),{dados:e.dadosParaComponente},null,8,["dados"])}const Ue=P(ja,[["render",Ha]]),Ua=t.defineComponent({name:"EliTabelaDetalhesLinha",components:{EliTabelaCelula:Ue},props:{linha:{type:null,required:!0},colunasInvisiveis:{type:Array,required:!0}}}),Ya={class:"eli-tabela__detalhes"},Ra={class:"eli-tabela__detalhe-rotulo"},Ja={class:"eli-tabela__detalhe-valor"};function Wa(e,a,n,r,s,m){const o=t.resolveComponent("EliTabelaCelula");return t.openBlock(),t.createElementBlock("div",Ya,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.colunasInvisiveis,(l,u)=>(t.openBlock(),t.createElementBlock("div",{key:`det-${u}-${l.rotulo}`,class:"eli-tabela__detalhe"},[t.createElementVNode("div",Ra,t.toDisplayString(l.rotulo),1),t.createElementVNode("div",Ja,[t.createVNode(o,{celula:l.celula(e.linha)},null,8,["celula"])])]))),128))])}const Za=P(Ua,[["render",Wa],["__scopeId","data-v-f1ee8d20"]]),Ga=t.defineComponent({name:"EliTabelaBody",components:{EliTabelaCelula:Ue,EliTabelaDetalhesLinha:Za,MoreVertical:Mt,ChevronRight:Le,ChevronDown:Ie},props:{colunas:{type:Array,required:!0},colunasInvisiveis:{type:Array,required:!0},temColunasInvisiveis:{type:Boolean,required:!0},linhasExpandidas:{type:Object,required:!0},linhas:{type:Array,required:!0},temAcoes:{type:Boolean,required:!0},menuAberto:{type:Number,required:!0},possuiAcoes:{type:Function,required:!0},toggleMenu:{type:Function,required:!0},alternarLinhaExpandida:{type:Function,required:!0}},setup(){return{ChevronRight:Le,ChevronDown:Ie}}}),Xa={class:"eli-tabela__tbody"},Ka=["aria-expanded","aria-label","title","onClick"],Qa=["id","disabled","aria-expanded","aria-controls","aria-label","title","onClick"],xa=["colspan"];function eo(e,a,n,r,s,m){const o=t.resolveComponent("EliTabelaCelula"),l=t.resolveComponent("MoreVertical"),u=t.resolveComponent("EliTabelaDetalhesLinha");return t.openBlock(),t.createElementBlock("tbody",Xa,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.linhas,(i,d)=>{var b,N,S,$,c,E;return t.openBlock(),t.createElementBlock(t.Fragment,{key:`grp-${d}`},[t.createElementVNode("tr",{class:t.normalizeClass(["eli-tabela__tr",[d%2===1?"eli-tabela__tr--zebra":void 0]])},[e.temColunasInvisiveis?(t.openBlock(),t.createElementBlock("td",{class:"eli-tabela__td eli-tabela__td--expander",key:`td-${d}-exp`},[t.createElementVNode("button",{type:"button",class:t.normalizeClass(["eli-tabela__expander-botao",[(b=e.linhasExpandidas)!=null&&b[d]?"eli-tabela__expander-botao--ativo":void 0]]),"aria-expanded":(N=e.linhasExpandidas)!=null&&N[d]?"true":"false","aria-label":(S=e.linhasExpandidas)!=null&&S[d]?"Ocultar colunas ocultas":"Mostrar colunas ocultas",title:($=e.linhasExpandidas)!=null&&$[d]?"Ocultar detalhes":"Mostrar detalhes",onClick:t.withModifiers(y=>e.alternarLinhaExpandida(d),["stop"])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent((c=e.linhasExpandidas)!=null&&c[d]?e.ChevronDown:e.ChevronRight),{class:"eli-tabela__expander-icone",size:16,"stroke-width":2,"aria-hidden":"true"}))],10,Ka)])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.colunas,(y,k)=>(t.openBlock(),t.createElementBlock("td",{key:`td-${d}-${k}`,class:"eli-tabela__td"},[t.createVNode(o,{celula:y.celula(i)},null,8,["celula"])]))),128)),e.temAcoes?(t.openBlock(),t.createElementBlock("td",{class:"eli-tabela__td eli-tabela__td--acoes",key:`td-${d}-acoes`},[t.createElementVNode("div",{class:t.normalizeClass(["eli-tabela__acoes-container",[e.menuAberto===d?"eli-tabela__acoes-container--aberto":void 0]])},[t.createElementVNode("button",{class:"eli-tabela__acoes-toggle",type:"button",id:`eli-tabela-acoes-toggle-${d}`,disabled:!e.possuiAcoes(d),"aria-haspopup":"menu","aria-expanded":e.menuAberto===d?"true":"false","aria-controls":e.possuiAcoes(d)?`eli-tabela-acoes-menu-${d}`:void 0,"aria-label":e.possuiAcoes(d)?"Ações da linha":"Nenhuma ação disponível",title:e.possuiAcoes(d)?"Ações":"Nenhuma ação disponível",onClick:t.withModifiers(y=>e.toggleMenu(d,y),["stop"])},[t.createVNode(l,{class:"eli-tabela__acoes-toggle-icone",size:18,"stroke-width":2})],8,Qa)],2)])):t.createCommentVNode("",!0)],2),e.temColunasInvisiveis&&((E=e.linhasExpandidas)!=null&&E[d])?(t.openBlock(),t.createElementBlock("tr",{key:0,class:t.normalizeClass(["eli-tabela__tr eli-tabela__tr--detalhes",[d%2===1?"eli-tabela__tr--zebra":void 0]])},[t.createElementVNode("td",{class:"eli-tabela__td eli-tabela__td--detalhes",colspan:(e.temColunasInvisiveis?1:0)+e.colunas.length+(e.temAcoes?1:0)},[t.createVNode(u,{linha:i,colunasInvisiveis:e.colunasInvisiveis},null,8,["linha","colunasInvisiveis"])],8,xa)],2)):t.createCommentVNode("",!0)],64)}),128))])}const to=P(Ga,[["render",eo]]),ao=t.defineComponent({name:"EliTabelaMenuAcoes",props:{menuAberto:{type:Number,required:!0},posicao:{type:Object,required:!0},acoes:{type:Array,required:!0},linha:{type:null,required:!0}},emits:{executar(e){return e!==null&&typeof e=="object"}},setup(e,{emit:a,expose:n}){const r=t.ref(null);n({menuEl:r});const s=t.computed(()=>e.acoes.length>0);function m(o){e.linha&&a("executar",{acao:o.acao,linha:e.linha})}return{menuEl:r,possuiAcoes:s,emitExecutar:m}}}),oo=["id","aria-labelledby"],no=["aria-label","title","onClick"],ro={class:"eli-tabela__acoes-item-texto"};function lo(e,a,n,r,s,m){return t.openBlock(),t.createBlock(t.Teleport,{to:"body"},[e.menuAberto!==null&&e.possuiAcoes?(t.openBlock(),t.createElementBlock("ul",{key:0,id:`eli-tabela-acoes-menu-${e.menuAberto}`,ref:"menuEl",class:"eli-tabela__acoes-menu",role:"menu","aria-labelledby":`eli-tabela-acoes-toggle-${e.menuAberto}`,style:t.normalizeStyle({position:"fixed",top:`${e.posicao.top}px`,left:`${e.posicao.left}px`,zIndex:999999})},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.acoes,o=>(t.openBlock(),t.createElementBlock("li",{key:`acao-${e.menuAberto}-${o.indice}`,class:"eli-tabela__acoes-item",role:"none"},[t.createElementVNode("button",{type:"button",class:"eli-tabela__acoes-item-botao",style:t.normalizeStyle({color:o.acao.cor}),role:"menuitem","aria-label":o.acao.rotulo,title:o.acao.rotulo,onClick:t.withModifiers(l=>e.emitExecutar(o),["stop"])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.acao.icone),{class:"eli-tabela__acoes-item-icone",size:16,"stroke-width":2})),t.createElementVNode("span",ro,t.toDisplayString(o.acao.rotulo),1)],12,no)]))),128))],12,oo)):t.createCommentVNode("",!0)])}const io=P(ao,[["render",lo]]),so=t.defineComponent({name:"EliTabelaPaginacao",props:{pagina:{type:Number,required:!0},totalPaginas:{type:Number,required:!0},maximoBotoes:{type:Number,required:!1}},emits:{alterar(e){return Number.isFinite(e)}},setup(e,{emit:a}){const n=t.computed(()=>{const i=e.maximoBotoes;return typeof i=="number"&&i>=5?Math.floor(i):7}),r=t.computed(()=>{const i=e.totalPaginas,d=e.pagina,b=n.value,N=[],S=k=>{N.push({label:String(k),pagina:k,ativo:k===d})},$=()=>{N.push({label:"…",ehEllipsis:!0})};if(i<=b){for(let k=1;k<=i;k+=1)S(k);return N}const c=Math.max(3,b-2);let E=Math.max(2,d-Math.floor(c/2)),y=E+c-1;y>=i&&(y=i-1,E=y-c+1),S(1),E>2&&$();for(let k=E;k<=y;k+=1)S(k);return ye.pagina<=1),o=t.computed(()=>e.pagina>=e.totalPaginas),l=t.computed(()=>e.pagina),u=t.computed(()=>e.totalPaginas);return{botoes:r,irParaPagina:s,anteriorDesabilitado:m,proximaDesabilitada:o,paginaAtual:l,totalPaginasExibidas:u}}}),co={key:0,class:"eli-tabela__paginacao",role:"navigation","aria-label":"Paginação de resultados"},uo=["disabled"],mo={key:0,class:"eli-tabela__pagina-ellipsis","aria-hidden":"true"},po=["disabled","aria-current","aria-label","onClick"],fo=["disabled"];function bo(e,a,n,r,s,m){return e.totalPaginasExibidas>1?(t.openBlock(),t.createElementBlock("nav",co,[t.createElementVNode("button",{type:"button",class:"eli-tabela__pagina-botao",disabled:e.anteriorDesabilitado,"aria-label":"Página anterior",onClick:a[0]||(a[0]=o=>e.irParaPagina(e.paginaAtual-1))}," << ",8,uo),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.botoes,(o,l)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:`${o.label}-${l}`},[o.ehEllipsis?(t.openBlock(),t.createElementBlock("span",mo,t.toDisplayString(o.label),1)):(t.openBlock(),t.createElementBlock("button",{key:1,type:"button",class:t.normalizeClass(["eli-tabela__pagina-botao",o.ativo?"eli-tabela__pagina-botao--ativo":void 0]),disabled:o.ativo,"aria-current":o.ativo?"page":void 0,"aria-label":`Ir para página ${o.label}`,onClick:u=>e.irParaPagina(o.pagina)},t.toDisplayString(o.label),11,po))],64))),128)),t.createElementVNode("button",{type:"button",class:"eli-tabela__pagina-botao",disabled:e.proximaDesabilitada,"aria-label":"Próxima página",onClick:a[1]||(a[1]=o=>e.irParaPagina(e.paginaAtual+1))}," >> ",8,fo)])):t.createCommentVNode("",!0)}const ho=P(so,[["render",bo],["__scopeId","data-v-5ca7a362"]]),Ye="application/x-eli-tabela-coluna",go=t.defineComponent({name:"EliTabelaModalColunas",props:{aberto:{type:Boolean,required:!0},rotulosColunas:{type:Array,required:!0},configInicial:{type:Object,required:!0},colunas:{type:Array,required:!0}},emits:{fechar(){return!0},salvar(e){return!0}},setup(e,{emit:a}){const n=t.ref([]),r=t.ref([]);function s(){var H,X;const $=e.rotulosColunas,c=(((H=e.configInicial.visiveis)==null?void 0:H.length)??0)>0||(((X=e.configInicial.invisiveis)==null?void 0:X.length)??0)>0,E=new Set(e.colunas.filter(O=>O.visivel===!1).map(O=>O.rotulo)),y=c?new Set(e.configInicial.invisiveis??[]):E,k=$.filter(O=>!y.has(O)),j=e.configInicial.visiveis??[],G=new Set(k),I=[];for(const O of j)G.has(O)&&I.push(O);for(const O of k)I.includes(O)||I.push(O);n.value=I,r.value=$.filter(O=>y.has(O))}t.watch(()=>[e.aberto,e.rotulosColunas,e.configInicial,e.colunas],()=>{e.aberto&&s()},{deep:!0,immediate:!0});function m(){a("fechar")}function o(){a("salvar",{visiveis:[...n.value],invisiveis:[...r.value]})}function l($,c){var E,y;try{(E=$.dataTransfer)==null||E.setData(Ye,JSON.stringify(c)),(y=$.dataTransfer)==null||y.setData("text/plain",c.rotulo),$.dataTransfer.effectAllowed="move"}catch{}}function u($){var c;try{const E=(c=$.dataTransfer)==null?void 0:c.getData(Ye);if(!E)return null;const y=JSON.parse(E);return!y||typeof y.rotulo!="string"||y.origem!=="visiveis"&&y.origem!=="invisiveis"?null:y}catch{return null}}function i($){const c=$.origem==="visiveis"?n.value:r.value,E=c.indexOf($.rotulo);E>=0&&c.splice(E,1)}function d($,c,E){const y=$==="visiveis"?n.value:r.value,k=y.indexOf(c);k>=0&&y.splice(k,1),E===null||E<0||E>y.length?y.push(c):y.splice(E,0,c)}function b($,c,E,y){l($,{rotulo:c,origem:E,index:y})}function N($,c,E){const y=u($);if(y)if(i(y),d(c,y.rotulo,E),c==="visiveis"){const k=r.value.indexOf(y.rotulo);k>=0&&r.value.splice(k,1)}else{const k=n.value.indexOf(y.rotulo);k>=0&&n.value.splice(k,1)}}function S($,c,E){const y=u($);if(y)if(i(y),d(c,y.rotulo,null),c==="visiveis"){const k=r.value.indexOf(y.rotulo);k>=0&&r.value.splice(k,1)}else{const k=n.value.indexOf(y.rotulo);k>=0&&n.value.splice(k,1)}}return{visiveisLocal:n,invisiveisLocal:r,emitFechar:m,emitSalvar:o,onDragStart:b,onDropItem:N,onDropLista:S}}}),yo={class:"eli-tabela-modal-colunas__modal",role:"dialog","aria-modal":"true","aria-label":"Configurar colunas"},$o={class:"eli-tabela-modal-colunas__header"},Eo={class:"eli-tabela-modal-colunas__conteudo"},ko={class:"eli-tabela-modal-colunas__coluna"},Bo=["onDragstart","onDrop"],Co={class:"eli-tabela-modal-colunas__item-texto"},_o={class:"eli-tabela-modal-colunas__coluna"},vo=["onDragstart","onDrop"],So={class:"eli-tabela-modal-colunas__item-texto"},Vo={class:"eli-tabela-modal-colunas__footer"};function No(e,a,n,r,s,m){return e.aberto?(t.openBlock(),t.createElementBlock("div",{key:0,class:"eli-tabela-modal-colunas__overlay",role:"presentation",onClick:a[9]||(a[9]=t.withModifiers((...o)=>e.emitFechar&&e.emitFechar(...o),["self"]))},[t.createElementVNode("div",yo,[t.createElementVNode("header",$o,[a[10]||(a[10]=t.createElementVNode("h3",{class:"eli-tabela-modal-colunas__titulo"},"Colunas",-1)),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-colunas__fechar","aria-label":"Fechar",onClick:a[0]||(a[0]=(...o)=>e.emitFechar&&e.emitFechar(...o))}," × ")]),t.createElementVNode("div",Eo,[t.createElementVNode("div",ko,[a[12]||(a[12]=t.createElementVNode("div",{class:"eli-tabela-modal-colunas__coluna-titulo"},"Visíveis",-1)),t.createElementVNode("div",{class:"eli-tabela-modal-colunas__lista",onDragover:a[2]||(a[2]=t.withModifiers(()=>{},["prevent"])),onDrop:a[3]||(a[3]=o=>e.onDropLista(o,"visiveis",null))},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.visiveisLocal,(o,l)=>(t.openBlock(),t.createElementBlock("div",{key:`vis-${o}`,class:"eli-tabela-modal-colunas__item",draggable:"true",onDragstart:u=>e.onDragStart(u,o,"visiveis",l),onDragover:a[1]||(a[1]=t.withModifiers(()=>{},["prevent"])),onDrop:u=>e.onDropItem(u,"visiveis",l)},[a[11]||(a[11]=t.createElementVNode("span",{class:"eli-tabela-modal-colunas__item-handle","aria-hidden":"true"},"⋮⋮",-1)),t.createElementVNode("span",Co,t.toDisplayString(o),1)],40,Bo))),128))],32)]),t.createElementVNode("div",_o,[a[14]||(a[14]=t.createElementVNode("div",{class:"eli-tabela-modal-colunas__coluna-titulo"},"Invisíveis",-1)),t.createElementVNode("div",{class:"eli-tabela-modal-colunas__lista",onDragover:a[5]||(a[5]=t.withModifiers(()=>{},["prevent"])),onDrop:a[6]||(a[6]=o=>e.onDropLista(o,"invisiveis",null))},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.invisiveisLocal,(o,l)=>(t.openBlock(),t.createElementBlock("div",{key:`inv-${o}`,class:"eli-tabela-modal-colunas__item",draggable:"true",onDragstart:u=>e.onDragStart(u,o,"invisiveis",l),onDragover:a[4]||(a[4]=t.withModifiers(()=>{},["prevent"])),onDrop:u=>e.onDropItem(u,"invisiveis",l)},[a[13]||(a[13]=t.createElementVNode("span",{class:"eli-tabela-modal-colunas__item-handle","aria-hidden":"true"},"⋮⋮",-1)),t.createElementVNode("span",So,t.toDisplayString(o),1)],40,vo))),128))],32)])]),t.createElementVNode("footer",Vo,[t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-colunas__botao eli-tabela-modal-colunas__botao--sec",onClick:a[7]||(a[7]=(...o)=>e.emitFechar&&e.emitFechar(...o))}," Cancelar "),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-colunas__botao eli-tabela-modal-colunas__botao--prim",onClick:a[8]||(a[8]=(...o)=>e.emitSalvar&&e.emitSalvar(...o))}," Salvar ")])])])):t.createCommentVNode("",!0)}const Do=P(go,[["render",No],["__scopeId","data-v-b8f693ef"]]);function Ao(e){if(!Number.isFinite(e)||e<=0||e>=1)return 0;const a=e.toString();if(a.includes("e-")){const[,s]=a.split("e-"),m=Number(s);return Number.isFinite(m)?m:0}const n=a.indexOf(".");return n===-1?0:a.slice(n+1).replace(/0+$/,"").length}function Mo(e){const a=(e??"").trim().replace(/,/g,".");if(!a)return null;const n=Number(a);return Number.isNaN(n)?null:n}function Se(e,a){return e==null?"":a===null?String(e):Number(e).toFixed(Math.max(0,a)).replace(/\./g,",")}function Re(e){return(e??"").replace(/\D+/g,"")}function wo(e){const a=(e??"").replace(/[^0-9.,]+/g,""),n=a.match(/[.,]/);if(!n)return a;const r=n[0],s=a.indexOf(r),m=a.slice(0,s).replace(/[.,]/g,""),o=a.slice(s+1).replace(/[.,]/g,"");return`${m.length?m:"0"}${r}${o}`}function To(e,a){if(a===null)return e;if(a<=0)return e.replace(/[.,]/g,"");const n=e.match(/[.,]/);if(!n)return e;const r=n[0],s=e.indexOf(r),m=e.slice(0,s),o=e.slice(s+1);return`${m}${r}${o.slice(0,a)}`}function Po(e){const a=e.match(/^(\d+)[.,]$/);if(!a)return null;const n=Number(a[1]);return Number.isNaN(n)?null:n}const Fo=t.defineComponent({name:"EliEntradaNumero",inheritAttrs:!1,props:{value:{type:[Number,null],default:void 0},opcoes:{type:Object,required:!0}},emits:{"update:value":e=>!0,input:e=>!0,change:e=>!0,focus:()=>!0,blur:()=>!0},setup(e,{attrs:a,emit:n}){const r=t.computed(()=>{var d;const i=(d=e.opcoes)==null?void 0:d.precisao;return i==null?null:Ao(i)}),s=t.computed(()=>r.value===0),m=t.computed(()=>{const i=r.value;return i!==null&&i>0}),o=t.ref(""),l=t.ref(void 0);t.watch(()=>e.value,i=>{i!==l.value&&(o.value=Se(i,r.value),l.value=i)},{immediate:!0});function u(i){if(m.value){const S=r.value??0,$=Re(i),c=$?Number($):0,E=Math.pow(10,S),y=$?c/E:null,k=y===null?null:y;l.value=k,n("update:value",k),n("input",k),n("change",k),o.value=Se(k,S);return}const d=s.value?Re(i):wo(i),b=s.value?d:To(d,r.value);let N=null;if(b){const $=(s.value?null:Po(b))??Mo(b);N=$===null?null:$}l.value=N,n("update:value",N),n("input",N),n("change",N),o.value=Se(N,r.value)}return{attrs:a,emit:n,displayValue:o,isInteiro:s,onUpdateModelValue:u}}}),Oo={class:"eli-entrada__prefixo"},qo={class:"eli-entrada__sufixo"};function Io(e,a,n,r,s,m){var o,l,u,i;return t.openBlock(),t.createBlock(Ce.VTextField,t.mergeProps({"model-value":e.displayValue,label:(o=e.opcoes)==null?void 0:o.rotulo,placeholder:(l=e.opcoes)==null?void 0:l.placeholder,type:e.isInteiro?"number":"text",inputmode:e.isInteiro?"numeric":"decimal",pattern:e.isInteiro?"[0-9]*":"[0-9.,]*"},e.attrs,{"onUpdate:modelValue":e.onUpdateModelValue,onFocus:a[0]||(a[0]=()=>e.emit("focus")),onBlur:a[1]||(a[1]=()=>e.emit("blur"))}),t.createSlots({_:2},[(u=e.opcoes)!=null&&u.prefixo?{name:"prepend-inner",fn:t.withCtx(()=>[t.createElementVNode("span",Oo,t.toDisplayString(e.opcoes.prefixo),1)]),key:"0"}:void 0,(i=e.opcoes)!=null&&i.sufixo?{name:"append-inner",fn:t.withCtx(()=>[t.createElementVNode("span",qo,t.toDisplayString(e.opcoes.sufixo),1)]),key:"1"}:void 0]),1040,["model-value","label","placeholder","type","inputmode","pattern","onUpdate:modelValue"])}const Ve=P(Fo,[["render",Io],["__scopeId","data-v-77cbf216"]]),Lo=t.defineComponent({name:"EliEntradaDataHora",inheritAttrs:!1,props:{value:{type:String,default:void 0},opcoes:{type:Object,required:!1,default:void 0},modelValue:{type:String,default:null},modo:{type:String,default:void 0},rotulo:{type:String,default:void 0},placeholder:{type:String,default:void 0},desabilitado:{type:Boolean,default:void 0},limpavel:{type:Boolean,default:void 0},erro:{type:Boolean,default:void 0},mensagensErro:{type:[String,Array],default:void 0},dica:{type:String,default:void 0},dicaPersistente:{type:Boolean,default:void 0},densidade:{type:String,default:void 0},variante:{type:String,default:void 0},min:{type:String,default:void 0},max:{type:String,default:void 0}},emits:{"update:value":e=>!0,input:e=>!0,change:e=>!0,"update:modelValue":e=>!0,alterar:e=>!0,foco:()=>!0,desfoco:()=>!0,focus:()=>!0,blur:()=>!0},setup(e,{emit:a,attrs:n}){const r=t.computed(()=>e.opcoes?e.opcoes:{rotulo:e.rotulo??"Data e hora",placeholder:e.placeholder??"",modo:e.modo??"dataHora",limpavel:e.limpavel,erro:e.erro,mensagensErro:e.mensagensErro,dica:e.dica,dicaPersistente:e.dicaPersistente,densidade:e.densidade,variante:e.variante,min:e.min,max:e.max}),s=t.computed(()=>r.value.modo??"dataHora"),m=t.computed(()=>!!e.desabilitado),o=t.computed(()=>s.value==="data"?"date":"datetime-local");function l(c){return s.value==="data"?se(c).format("YYYY-MM-DD"):se(c).format("YYYY-MM-DDTHH:mm")}function u(c){return s.value==="data"?se(`${c}T00:00`).format():se(c).format()}const i=t.computed(()=>e.value!==void 0?e.value??null:e.modelValue),d=t.computed({get:()=>i.value?l(i.value):"",set:c=>{const E=c&&c.length>0?c:null;if(!E){a("update:value",null),a("input",null),a("change",null),a("update:modelValue",null),a("alterar",null);return}const y=u(E);a("update:value",y),a("input",y),a("change",y),a("update:modelValue",y),a("alterar",y)}}),b=t.computed(()=>{const c=r.value.min;if(c)return l(c)}),N=t.computed(()=>{const c=r.value.max;if(c)return l(c)});function S(){a("foco"),a("focus")}function $(){a("desfoco"),a("blur")}return{attrs:n,valor:d,tipoInput:o,minLocal:b,maxLocal:N,opcoesEfetivas:r,desabilitadoEfetivo:m,emitCompatFocus:S,emitCompatBlur:$}}}),zo={class:"eli-data-hora"};function jo(e,a,n,r,s,m){return t.openBlock(),t.createElementBlock("div",zo,[t.createVNode(Ce.VTextField,t.mergeProps({modelValue:e.valor,"onUpdate:modelValue":a[0]||(a[0]=o=>e.valor=o),type:e.tipoInput,label:e.opcoesEfetivas.rotulo,placeholder:e.opcoesEfetivas.placeholder,disabled:e.desabilitadoEfetivo,clearable:!!e.opcoesEfetivas.limpavel,error:!!e.opcoesEfetivas.erro,"error-messages":e.opcoesEfetivas.mensagensErro,hint:e.opcoesEfetivas.dica,"persistent-hint":!!e.opcoesEfetivas.dicaPersistente,density:e.opcoesEfetivas.densidade??"comfortable",variant:e.opcoesEfetivas.variante??"outlined",min:e.minLocal,max:e.maxLocal},e.attrs,{onFocus:e.emitCompatFocus,onBlur:e.emitCompatBlur}),null,16,["modelValue","type","label","placeholder","disabled","clearable","error","error-messages","hint","persistent-hint","density","variant","min","max","onFocus","onBlur"])])}const Ne=P(Lo,[["render",jo],["__scopeId","data-v-1bfd1be8"]]),Ho=t.defineComponent({name:"EliEntradaParagrafo",components:{VTextarea:_e.VTextarea},inheritAttrs:!1,props:{value:{type:[String,null],default:void 0},opcoes:{type:Object,required:!0}},emits:{"update:value":e=>!0,input:e=>!0,change:e=>!0,focus:()=>!0,blur:()=>!0},setup(e,{attrs:a,emit:n}){const r=t.computed({get:()=>e.value,set:s=>{n("update:value",s),n("input",s),n("change",s)}});return{attrs:a,emit:n,localValue:r,opcoes:e.opcoes}}});function Uo(e,a,n,r,s,m){var o,l,u,i,d,b,N,S,$,c,E,y;return t.openBlock(),t.createBlock(rt.VTextarea,t.mergeProps({modelValue:e.localValue,"onUpdate:modelValue":a[0]||(a[0]=k=>e.localValue=k),label:(o=e.opcoes)==null?void 0:o.rotulo,placeholder:(l=e.opcoes)==null?void 0:l.placeholder,rows:((u=e.opcoes)==null?void 0:u.linhas)??4,counter:(i=e.opcoes)==null?void 0:i.limiteCaracteres,maxlength:(d=e.opcoes)==null?void 0:d.limiteCaracteres,clearable:!!((b=e.opcoes)!=null&&b.limpavel),error:!!((N=e.opcoes)!=null&&N.erro),"error-messages":(S=e.opcoes)==null?void 0:S.mensagensErro,hint:($=e.opcoes)==null?void 0:$.dica,"persistent-hint":!!((c=e.opcoes)!=null&&c.dicaPersistente),density:((E=e.opcoes)==null?void 0:E.densidade)??"comfortable",variant:((y=e.opcoes)==null?void 0:y.variante)??"outlined","auto-grow":""},e.attrs,{onFocus:a[1]||(a[1]=()=>e.emit("focus")),onBlur:a[2]||(a[2]=()=>e.emit("blur"))}),null,16,["modelValue","label","placeholder","rows","counter","maxlength","clearable","error","error-messages","hint","persistent-hint","density","variant"])}const Je=P(Ho,[["render",Uo]]),Yo=t.defineComponent({name:"EliEntradaSelecao",components:{VSelect:_e.VSelect},inheritAttrs:!1,props:{value:{type:[String,null],default:void 0},opcoes:{type:Object,required:!0}},emits:{"update:value":e=>!0,input:e=>!0,change:e=>!0,focus:()=>!0,blur:()=>!0},setup(e,{attrs:a,emit:n}){const r=t.ref([]),s=t.ref(!1),m=t.computed({get:()=>e.value,set:l=>{n("update:value",l),n("input",l),n("change",l)}});async function o(){s.value=!0;try{const l=await e.opcoes.itens();r.value=Array.isArray(l)?l:[]}finally{s.value=!1}}return t.watch(()=>e.opcoes.itens,()=>{o()}),t.onMounted(()=>{o()}),{attrs:a,emit:n,localValue:m,opcoes:e.opcoes,itens:r,carregando:s}}});function Ro(e,a,n,r,s,m){var o,l,u,i,d,b,N,S,$;return t.openBlock(),t.createBlock(lt.VSelect,t.mergeProps({modelValue:e.localValue,"onUpdate:modelValue":a[0]||(a[0]=c=>e.localValue=c),label:(o=e.opcoes)==null?void 0:o.rotulo,placeholder:(l=e.opcoes)==null?void 0:l.placeholder,items:e.itens,"item-title":"rotulo","item-value":"chave",loading:e.carregando,disabled:e.carregando,clearable:!!((u=e.opcoes)!=null&&u.limpavel),error:!!((i=e.opcoes)!=null&&i.erro),"error-messages":(d=e.opcoes)==null?void 0:d.mensagensErro,hint:(b=e.opcoes)==null?void 0:b.dica,"persistent-hint":!!((N=e.opcoes)!=null&&N.dicaPersistente),density:((S=e.opcoes)==null?void 0:S.densidade)??"comfortable",variant:(($=e.opcoes)==null?void 0:$.variante)??"outlined"},e.attrs,{onFocus:a[1]||(a[1]=()=>e.emit("focus")),onBlur:a[2]||(a[2]=()=>e.emit("blur"))}),null,16,["modelValue","label","placeholder","items","loading","disabled","clearable","error","error-messages","hint","persistent-hint","density","variant"])}const We=P(Yo,[["render",Ro]]);function Jo(e){return e==="texto"||e==="numero"||e==="dataHora"}function Wo(e){var n,r;const a=(r=(n=e==null?void 0:e.entrada)==null?void 0:n[1])==null?void 0:r.rotulo;return String(a||((e==null?void 0:e.coluna)??"Filtro"))}const Zo=t.defineComponent({name:"EliTabelaModalFiltroAvancado",props:{aberto:{type:Boolean,required:!0},filtrosBase:{type:Array,required:!0},modelo:{type:Array,required:!0}},emits:{fechar:()=>!0,limpar:()=>!0,salvar:e=>!0},setup(e,{emit:a}){const n=t.ref([]),r=t.ref(""),s=t.computed(()=>(e.filtrosBase??[]).map(c=>String(c.coluna))),m=t.computed(()=>{const c=new Set(n.value.map(E=>String(E.coluna)));return(e.filtrosBase??[]).filter(E=>!c.has(String(E.coluna)))});function o(c){const E=c==null?void 0:c[0];return E==="numero"?Ve:E==="dataHora"?Ne:$e}function l(c){return(c==null?void 0:c[1])??{rotulo:""}}function u(c){return(c==null?void 0:c[0])==="numero"?null:""}function i(){var y;const c=e.filtrosBase??[],E=Array.isArray(e.modelo)?e.modelo:[];n.value=E.map(k=>{const j=c.find(O=>String(O.coluna)===String(k.coluna))??c[0],G=(j==null?void 0:j.entrada)??k.entrada,I=(j==null?void 0:j.coluna)??k.coluna,H=String((j==null?void 0:j.operador)??"="),X=k.valor??u(G);return{coluna:I,operador:H,entrada:G,valor:X}});for(const k of n.value)s.value.includes(String(k.coluna))&&(k.operador=String(((y=c.find(j=>String(j.coluna)===String(k.coluna)))==null?void 0:y.operador)??"="),k.entrada&&!Jo(k.entrada[0])&&(k.entrada=["texto",{rotulo:"Valor"}]))}t.watch(()=>[e.aberto,e.filtrosBase,e.modelo],()=>{e.aberto&&i()},{deep:!0,immediate:!0});function d(){if(!r.value)return;const c=(e.filtrosBase??[]).find(E=>String(E.coluna)===String(r.value));c&&(n.value.some(E=>String(E.coluna)===String(c.coluna))||(n.value.push({coluna:c.coluna,entrada:c.entrada,operador:String(c.operador??"="),valor:u(c.entrada)}),r.value=""))}function b(c){n.value.splice(c,1)}function N(){a("fechar")}function S(){a("limpar")}function $(){a("salvar",n.value.map(c=>({coluna:c.coluna,valor:c.valor})))}return{linhas:n,opcoesParaAdicionar:m,colunaParaAdicionar:r,componenteEntrada:o,opcoesEntrada:l,adicionar:d,remover:b,emitFechar:N,emitSalvar:$,emitLimpar:S,rotuloDoFiltro:Wo}}}),Go={class:"eli-tabela-modal-filtro__modal",role:"dialog","aria-modal":"true","aria-label":"Filtro avançado"},Xo={class:"eli-tabela-modal-filtro__header"},Ko={class:"eli-tabela-modal-filtro__conteudo"},Qo={key:0,class:"eli-tabela-modal-filtro__vazio"},xo={key:1,class:"eli-tabela-modal-filtro__lista"},en={class:"eli-tabela-modal-filtro__entrada"},tn=["onClick"],an={class:"eli-tabela-modal-filtro__acoes"},on=["disabled"],nn=["value"],rn=["disabled"],ln={class:"eli-tabela-modal-filtro__footer"};function sn(e,a,n,r,s,m){return e.aberto?(t.openBlock(),t.createElementBlock("div",{key:0,class:"eli-tabela-modal-filtro__overlay",role:"presentation",onClick:a[6]||(a[6]=t.withModifiers((...o)=>e.emitFechar&&e.emitFechar(...o),["self"]))},[t.createElementVNode("div",Go,[t.createElementVNode("header",Xo,[a[7]||(a[7]=t.createElementVNode("h3",{class:"eli-tabela-modal-filtro__titulo"},"Filtro avançado",-1)),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__fechar","aria-label":"Fechar",onClick:a[0]||(a[0]=(...o)=>e.emitFechar&&e.emitFechar(...o))}," × ")]),t.createElementVNode("div",Ko,[e.filtrosBase.length?(t.openBlock(),t.createElementBlock("div",xo,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.linhas,(o,l)=>(t.openBlock(),t.createElementBlock("div",{key:String(o.coluna),class:"eli-tabela-modal-filtro__linha"},[t.createElementVNode("div",en,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.componenteEntrada(o.entrada)),{value:o.valor,"onUpdate:value":u=>o.valor=u,opcoes:e.opcoesEntrada(o.entrada),density:"compact"},null,40,["value","onUpdate:value","opcoes"]))]),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__remover",title:"Remover","aria-label":"Remover",onClick:u=>e.remover(l)}," × ",8,tn)]))),128))])):(t.openBlock(),t.createElementBlock("div",Qo," Nenhum filtro configurado na tabela. ")),t.createElementVNode("div",an,[t.withDirectives(t.createElementVNode("select",{"onUpdate:modelValue":a[1]||(a[1]=o=>e.colunaParaAdicionar=o),class:"eli-tabela-modal-filtro__select",disabled:!e.opcoesParaAdicionar.length},[a[8]||(a[8]=t.createElementVNode("option",{disabled:"",value:""},"Selecione um filtro…",-1)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.opcoesParaAdicionar,o=>(t.openBlock(),t.createElementBlock("option",{key:String(o.coluna),value:String(o.coluna)},t.toDisplayString(e.rotuloDoFiltro(o)),9,nn))),128))],8,on),[[t.vModelSelect,e.colunaParaAdicionar]]),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__botao",onClick:a[2]||(a[2]=(...o)=>e.adicionar&&e.adicionar(...o)),disabled:!e.colunaParaAdicionar}," Adicionar ",8,rn)])]),t.createElementVNode("footer",ln,[t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__botao eli-tabela-modal-filtro__botao--sec",onClick:a[3]||(a[3]=(...o)=>e.emitLimpar&&e.emitLimpar(...o))}," Limpar "),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__botao eli-tabela-modal-filtro__botao--sec",onClick:a[4]||(a[4]=(...o)=>e.emitFechar&&e.emitFechar(...o))}," Cancelar "),t.createElementVNode("button",{type:"button",class:"eli-tabela-modal-filtro__botao eli-tabela-modal-filtro__botao--prim",onClick:a[5]||(a[5]=(...o)=>e.emitSalvar&&e.emitSalvar(...o))}," Aplicar ")])])])):t.createCommentVNode("",!0)}const cn=P(Zo,[["render",sn],["__scopeId","data-v-ae32fe4c"]]),dn="eli:tabela";function Ze(e){return`${dn}:${e}:colunas`}function Ge(e){if(!e||typeof e!="object")return{visiveis:[],invisiveis:[]};const a=e,n=Array.isArray(a.visiveis)?a.visiveis.filter(s=>typeof s=="string"):[],r=Array.isArray(a.invisiveis)?a.invisiveis.filter(s=>typeof s=="string"):[];return{visiveis:n,invisiveis:r}}function Xe(e){try{const a=window.localStorage.getItem(Ze(e));return a?Ge(JSON.parse(a)):{visiveis:[],invisiveis:[]}}catch{return{visiveis:[],invisiveis:[]}}}function un(e,a){try{window.localStorage.setItem(Ze(e),JSON.stringify(Ge(a)))}catch{}}function De(e){return`eli_tabela:${e}:filtro_avancado`}function Ke(e){try{const a=localStorage.getItem(De(e));if(!a)return[];const n=JSON.parse(a);return Array.isArray(n)?n:[]}catch{return[]}}function mn(e,a){try{localStorage.setItem(De(e),JSON.stringify(a??[]))}catch{}}function pn(e){try{localStorage.removeItem(De(e))}catch{}}const fn=t.defineComponent({name:"EliTabela",inheritAttrs:!1,components:{EliTabelaCabecalho:Rt,EliTabelaEstados:Qt,EliTabelaDebug:aa,EliTabelaHead:ma,EliTabelaBody:to,EliTabelaMenuAcoes:io,EliTabelaPaginacao:ho,EliTabelaModalColunas:Do,EliTabelaModalFiltroAvancado:cn},props:{tabela:{type:Object,required:!0}},setup(e){const n=t.ref(!1),r=t.ref(null),s=t.ref([]),m=t.ref(0),o=t.ref([]),l=t.ref(null),u=t.ref(null),i=t.ref({top:0,left:0}),d=t.ref(""),b=t.ref(1),N=t.ref(null),S=t.ref("asc"),$=t.ref(!1),c=t.ref(Ke(e.tabela.nome));function E(){$.value=!0}function y(){$.value=!1}function k(){c.value=[],pn(e.tabela.nome),$.value=!1,b.value!==1&&(b.value=1)}function j(h){c.value=h??[],mn(e.tabela.nome,h??[]),$.value=!1,b.value!==1&&(b.value=1)}const G=t.computed(()=>{const h=e.tabela.filtroAvancado??[];return(c.value??[]).filter(C=>C&&C.coluna!==void 0).map(C=>{const D=h.find(M=>String(M.coluna)===String(C.coluna));return D?{coluna:String(D.coluna),operador:D.operador,valor:C.valor}:null}).filter(Boolean)}),I=t.computed(()=>e.tabela),H=t.computed(()=>!!e.tabela.mostrarCaixaDeBusca),X=t.computed(()=>e.tabela.acoesTabela??[]),O=t.computed(()=>X.value.length>0),ae=t.ref(!1),w=t.ref(Xe(e.tabela.nome)),A=t.ref({}),de=t.computed(()=>e.tabela.colunas.map(h=>h.rotulo)),he=t.computed(()=>{var Q,x;const h=e.tabela.colunas,D=(((Q=w.value.visiveis)==null?void 0:Q.length)??0)>0||(((x=w.value.invisiveis)==null?void 0:x.length)??0)>0?w.value.invisiveis??[]:h.filter(q=>q.visivel===!1).map(q=>q.rotulo),M=new Set(D),J=h.filter(q=>M.has(q.rotulo)),Z=D,te=new Map;for(const q of J)te.has(q.rotulo)||te.set(q.rotulo,q);const K=[];for(const q of Z){const oe=te.get(q);oe&&K.push(oe)}for(const q of J)K.includes(q)||K.push(q);return K}),_=t.computed(()=>he.value.length>0),g=t.computed(()=>{var q,oe;const h=e.tabela.colunas,C=de.value,D=(((q=w.value.visiveis)==null?void 0:q.length)??0)>0||(((oe=w.value.invisiveis)==null?void 0:oe.length)??0)>0,M=D?w.value.invisiveis??[]:e.tabela.colunas.filter(z=>z.visivel===!1).map(z=>z.rotulo),J=new Set(M),Z=C.filter(z=>!J.has(z)),te=new Set(Z),K=D?w.value.visiveis??[]:[],Q=[];for(const z of K)te.has(z)&&Q.push(z);for(const z of Z)Q.includes(z)||Q.push(z);const x=new Map;for(const z of h)x.has(z.rotulo)||x.set(z.rotulo,z);return Q.map(z=>x.get(z)).filter(Boolean)});function p(){ae.value=!0}function B(){ae.value=!1}function f(h){w.value=h,un(e.tabela.nome,h),ae.value=!1,A.value={}}function V(h){const C=!!A.value[h];A.value={...A.value,[h]:!C}}const v=t.computed(()=>{const h=e.tabela.registros_por_consulta;return typeof h=="number"&&h>0?Math.floor(h):10});function T(h){const C=(d.value??"").trim().toLowerCase();return C?h.filter(D=>JSON.stringify(D).toLowerCase().includes(C)):h}function L(h,C,D){switch(h){case"=":return C==D;case"!=":return C!=D;case">":return Number(C)>Number(D);case">=":return Number(C)>=Number(D);case"<":return Number(C)J.trim()).filter(Boolean)).includes(String(C));case"isNull":return C==null||C==="";default:return!0}}function U(h){const C=G.value;return C.length?h.filter(D=>C.every(M=>{const J=D==null?void 0:D[M.coluna];return L(String(M.operador),J,M.valor)})):h}const R=t.computed(()=>{const h=s.value??[];return U(T(h))}),W=t.computed(()=>R.value.length),ne=t.computed(()=>{const h=v.value;if(!h||h<=0)return 1;const C=W.value;return C?Math.max(1,Math.ceil(C/h)):1}),re=t.computed(()=>{const h=Math.max(1,v.value),C=(b.value-1)*h;return R.value.slice(C,C+h)}),ue=t.computed(()=>(e.tabela.acoesLinha??[]).length>0),le=t.computed(()=>(e.tabela.filtroAvancado??[]).length>0);let Y=0;function ee(h){var K,Q,x,q,oe,z;const C=h.getBoundingClientRect(),D=8,M=((x=(Q=(K=u.value)==null?void 0:K.menuEl)==null?void 0:Q.value)==null?void 0:x.offsetHeight)??0,J=((z=(oe=(q=u.value)==null?void 0:q.menuEl)==null?void 0:oe.value)==null?void 0:z.offsetWidth)??180;let Z=C.bottom+D;const te=C.right-J;M&&Z+M>window.innerHeight-D&&(Z=C.top-D-M),i.value={top:Math.max(D,Math.round(Z)),left:Math.max(D,Math.round(te))}}function ce(h){var D,M;if(l.value===null)return;const C=h.target;(M=(D=u.value)==null?void 0:D.menuEl)!=null&&M.value&&u.value.menuEl.value.contains(C)||(l.value=null)}function fe(h){if(h){if(N.value===h){S.value=S.value==="asc"?"desc":"asc",me();return}N.value=h,S.value="asc",b.value!==1?b.value=1:me()}}function $n(h){d.value!==h&&(d.value=h,b.value!==1?b.value=1:me())}function En(h){const C=Math.min(Math.max(1,h),ne.value);C!==b.value&&(b.value=C)}function xe(h){const C=e.tabela.acoesLinha??[],D=o.value[h]??[];return C.map((M,J)=>{const Z=M.exibir===void 0?!0:typeof M.exibir=="boolean"?M.exibir:!1;return{acao:M,indice:J,visivel:D[J]??Z}}).filter(M=>M.visivel)}function et(h){return xe(h).length>0}function kn(h,C){if(!et(h))return;if(l.value===h){l.value=null;return}l.value=h;const D=(C==null?void 0:C.currentTarget)??null;D&&(ee(D),requestAnimationFrame(()=>ee(D)))}async function me(){var J;const h=++Y;n.value=!0,r.value=null,o.value=[],l.value=null,A.value={};const C=Math.max(1,v.value),M={offSet:0,limit:999999};N.value&&(M.coluna_ordem=N.value,M.direcao_ordem=S.value);try{const Z=e.tabela,te=await Z.consulta(M);if(h!==Y)return;if(te.cod!==Te.sucesso){s.value=[],m.value=0,r.value=te.mensagem;return}const K=((J=te.valor)==null?void 0:J.valores)??[],Q=K.length;s.value=K,m.value=Q;const x=Math.max(1,Math.ceil((W.value||0)/C));if(b.value>x){b.value=x;return}const q=Z.acoesLinha??[];if(!q.length){o.value=[];return}const oe=K.map(()=>q.map(ge=>ge.exibir===void 0?!0:typeof ge.exibir=="boolean"?ge.exibir:!1));o.value=oe;const z=await Promise.all(K.map(async ge=>Promise.all(q.map(async Be=>{if(Be.exibir===void 0)return!0;if(typeof Be.exibir=="boolean")return Be.exibir;try{const Bn=Be.exibir(ge);return!!await Promise.resolve(Bn)}catch{return!1}}))));h===Y&&(o.value=z)}catch(Z){if(h!==Y)return;s.value=[],m.value=0,r.value=Z instanceof Error?Z.message:"Erro ao carregar dados."}finally{h===Y&&(n.value=!1)}}return t.onMounted(()=>{document.addEventListener("click",ce),me()}),t.onBeforeUnmount(()=>{document.removeEventListener("click",ce)}),t.watch(()=>e.tabela.mostrarCaixaDeBusca,h=>{!h&&d.value&&(d.value="",b.value!==1?b.value=1:me())}),t.watch(b,(h,C)=>{}),t.watch(()=>e.tabela,()=>{l.value=null,N.value=null,S.value="asc",d.value="",ae.value=!1,$.value=!1,w.value=Xe(e.tabela.nome),c.value=Ke(e.tabela.nome),A.value={},b.value!==1?b.value=1:me()}),t.watch(()=>e.tabela.registros_por_consulta,()=>{b.value!==1?b.value=1:me()}),t.watch(s,()=>{l.value=null,A.value={}}),{isDev:!1,tabela:I,carregando:n,erro:r,linhas:s,linhasPaginadas:re,quantidadeFiltrada:W,quantidade:m,menuAberto:l,valorBusca:d,paginaAtual:b,colunaOrdenacao:N,direcaoOrdenacao:S,totalPaginas:ne,exibirBusca:H,exibirFiltroAvancado:le,acoesCabecalho:X,temAcoesCabecalho:O,temAcoes:ue,colunasEfetivas:g,rotulosColunas:de,modalColunasAberto:ae,configColunas:w,temColunasInvisiveis:_,colunasInvisiveisEfetivas:he,linhasExpandidas:A,abrirModalColunas:p,abrirModalFiltro:E,fecharModalColunas:B,salvarModalColunas:f,modalFiltroAberto:$,filtrosUi:c,salvarFiltrosAvancados:j,limparFiltrosAvancados:k,fecharModalFiltro:y,alternarLinhaExpandida:V,alternarOrdenacao:fe,atualizarBusca:$n,irParaPagina:En,acoesDisponiveisPorLinha:xe,possuiAcoes:et,toggleMenu:kn,menuPopup:u,menuPopupPos:i}}}),bn={class:"eli-tabela"},hn={class:"eli-tabela__table"};function gn(e,a,n,r,s,m){const o=t.resolveComponent("EliTabelaDebug"),l=t.resolveComponent("EliTabelaEstados"),u=t.resolveComponent("EliTabelaCabecalho"),i=t.resolveComponent("EliTabelaModalColunas"),d=t.resolveComponent("EliTabelaModalFiltroAvancado"),b=t.resolveComponent("EliTabelaHead"),N=t.resolveComponent("EliTabelaBody"),S=t.resolveComponent("EliTabelaMenuAcoes"),$=t.resolveComponent("EliTabelaPaginacao");return t.openBlock(),t.createElementBlock("div",bn,[t.createVNode(o,{isDev:e.isDev,menuAberto:e.menuAberto,menuPopupPos:e.menuPopupPos},null,8,["isDev","menuAberto","menuPopupPos"]),e.carregando||e.erro||!e.linhas.length?(t.openBlock(),t.createBlock(l,{key:0,carregando:e.carregando,erro:e.erro,mensagemVazio:e.tabela.mensagemVazio},null,8,["carregando","erro","mensagemVazio"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[e.exibirBusca||e.temAcoesCabecalho?(t.openBlock(),t.createBlock(u,{key:0,exibirBusca:e.exibirBusca,exibirBotaoFiltroAvancado:e.exibirFiltroAvancado,valorBusca:e.valorBusca,acoesCabecalho:e.acoesCabecalho,onBuscar:e.atualizarBusca,onColunas:e.abrirModalColunas,onFiltroAvancado:e.abrirModalFiltro},null,8,["exibirBusca","exibirBotaoFiltroAvancado","valorBusca","acoesCabecalho","onBuscar","onColunas","onFiltroAvancado"])):t.createCommentVNode("",!0),t.createVNode(i,{aberto:e.modalColunasAberto,rotulosColunas:e.rotulosColunas,configInicial:e.configColunas,colunas:e.tabela.colunas,onFechar:e.fecharModalColunas,onSalvar:e.salvarModalColunas},null,8,["aberto","rotulosColunas","configInicial","colunas","onFechar","onSalvar"]),t.createVNode(d,{aberto:e.modalFiltroAberto,filtrosBase:e.tabela.filtroAvancado??[],modelo:e.filtrosUi,onFechar:e.fecharModalFiltro,onLimpar:e.limparFiltrosAvancados,onSalvar:e.salvarFiltrosAvancados},null,8,["aberto","filtrosBase","modelo","onFechar","onLimpar","onSalvar"]),t.createElementVNode("table",hn,[t.createVNode(b,{colunas:e.colunasEfetivas,temAcoes:e.temAcoes,temColunasInvisiveis:e.temColunasInvisiveis,colunaOrdenacao:e.colunaOrdenacao,direcaoOrdenacao:e.direcaoOrdenacao,onAlternarOrdenacao:e.alternarOrdenacao},null,8,["colunas","temAcoes","temColunasInvisiveis","colunaOrdenacao","direcaoOrdenacao","onAlternarOrdenacao"]),t.createVNode(N,{colunas:e.colunasEfetivas,colunasInvisiveis:e.colunasInvisiveisEfetivas,temColunasInvisiveis:e.temColunasInvisiveis,linhasExpandidas:e.linhasExpandidas,linhas:e.linhasPaginadas,temAcoes:e.temAcoes,menuAberto:e.menuAberto,possuiAcoes:e.possuiAcoes,toggleMenu:e.toggleMenu,alternarLinhaExpandida:e.alternarLinhaExpandida},null,8,["colunas","colunasInvisiveis","temColunasInvisiveis","linhasExpandidas","linhas","temAcoes","menuAberto","possuiAcoes","toggleMenu","alternarLinhaExpandida"])]),t.createVNode(S,{ref:"menuPopup",menuAberto:e.menuAberto,posicao:e.menuPopupPos,acoes:e.menuAberto===null?[]:e.acoesDisponiveisPorLinha(e.menuAberto),linha:e.menuAberto===null?null:e.linhasPaginadas[e.menuAberto],onExecutar:a[0]||(a[0]=({acao:c,linha:E})=>{e.menuAberto=null,c.acao(E)})},null,8,["menuAberto","posicao","acoes","linha"]),e.totalPaginas>1&&e.quantidadeFiltrada>0?(t.openBlock(),t.createBlock($,{key:1,pagina:e.paginaAtual,totalPaginas:e.totalPaginas,maximoBotoes:e.tabela.maximo_botoes_paginacao,onAlterar:e.irParaPagina},null,8,["pagina","totalPaginas","maximoBotoes","onAlterar"])):t.createCommentVNode("",!0)],64))])}const Qe=P(fn,[["render",gn]]),yn={install(e){e.component("EliOlaMundo",Me),e.component("EliBotao",ve),e.component("EliBadge",ye),e.component("EliCartao",we),e.component("EliTabela",Qe),e.component("EliEntradaTexto",$e),e.component("EliEntradaNumero",Ve),e.component("EliEntradaDataHora",Ne),e.component("EliEntradaParagrafo",Je),e.component("EliEntradaSelecao",We)}};F.EliBadge=ye,F.EliBotao=ve,F.EliCartao=we,F.EliEntradaDataHora=Ne,F.EliEntradaNumero=Ve,F.EliEntradaParagrafo=Je,F.EliEntradaSelecao=We,F.EliEntradaTexto=$e,F.EliOlaMundo=Me,F.EliTabela=Qe,F.default=yn,Object.defineProperties(F,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})})); diff --git a/dist/types/componentes/EliEntrada/EliEntradaDataHora.vue.d.ts b/dist/types/componentes/EliEntrada/EliEntradaDataHora.vue.d.ts index 0f7c168..f2de81d 100644 --- a/dist/types/componentes/EliEntrada/EliEntradaDataHora.vue.d.ts +++ b/dist/types/componentes/EliEntrada/EliEntradaDataHora.vue.d.ts @@ -191,8 +191,8 @@ declare const __VLS_export: import("vue").DefineComponent any) | undefined; onFocus?: (() => any) | undefined; onBlur?: (() => any) | undefined; - onAlterar?: ((_v: string | null) => any) | undefined; "onUpdate:modelValue"?: ((_v: string | null) => any) | undefined; + onAlterar?: ((_v: string | null) => any) | undefined; onFoco?: (() => any) | undefined; onDesfoco?: (() => any) | undefined; }>, { @@ -223,8 +223,8 @@ declare const __VLS_export: import("vue").DefineComponent; declare const _default: typeof __VLS_export; diff --git a/dist/types/componentes/EliEntrada/index.d.ts b/dist/types/componentes/EliEntrada/index.d.ts index dc5693f..a4f6c7c 100644 --- a/dist/types/componentes/EliEntrada/index.d.ts +++ b/dist/types/componentes/EliEntrada/index.d.ts @@ -1,5 +1,7 @@ import EliEntradaTexto from "./EliEntradaTexto.vue"; import EliEntradaNumero from "./EliEntradaNumero.vue"; import EliEntradaDataHora from "./EliEntradaDataHora.vue"; -export { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora }; +import EliEntradaParagrafo from "./EliEntradaParagrafo.vue"; +import EliEntradaSelecao from "./EliEntradaSelecao.vue"; +export { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora, EliEntradaParagrafo, EliEntradaSelecao }; export type { PadroesEntradas, TipoEntrada } from "./tiposEntradas"; diff --git a/dist/types/componentes/EliEntrada/registryEliEntradas.d.ts b/dist/types/componentes/EliEntrada/registryEliEntradas.d.ts index fe2b963..9e974a5 100644 --- a/dist/types/componentes/EliEntrada/registryEliEntradas.d.ts +++ b/dist/types/componentes/EliEntrada/registryEliEntradas.d.ts @@ -1,3 +1,4 @@ +import type { Component } from "vue"; export declare const registryTabelaCelulas: { readonly texto: import("vue").DefineComponent any) | undefined; onFocus?: (() => any) | undefined; onBlur?: (() => any) | undefined; - onAlterar?: ((_v: string | null) => any) | undefined; "onUpdate:modelValue"?: ((_v: string | null) => any) | undefined; + onAlterar?: ((_v: string | null) => any) | undefined; onFoco?: (() => any) | undefined; onDesfoco?: (() => any) | undefined; }>, { @@ -342,8 +343,11559 @@ export declare const registryTabelaCelulas: { }; value: string | null | undefined; placeholder: string; - rotulo: string; modelValue: string | null; + rotulo: string; desabilitado: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; + readonly paragrafo: import("vue").DefineComponent; + default: undefined; + }; + opcoes: { + type: import("vue").PropType<{ + rotulo: string; + placeholder?: string; + } & { + linhas?: number; + limiteCaracteres?: number; + limpavel?: boolean; + erro?: boolean; + mensagensErro?: string | string[]; + dica?: string; + dicaPersistente?: boolean; + densidade?: import("../../tipos/entrada.js").CampoDensidade; + variante?: import("../../tipos/entrada.js").CampoVariante; + }>; + required: true; + }; + }>, { + attrs: { + [x: string]: unknown; + }; + emit: ((event: "update:value", _v: string | null | undefined) => void) & ((event: "input", _v: string | null | undefined) => void) & ((event: "change", _v: string | null | undefined) => void) & ((event: "focus") => void) & ((event: "blur") => void); + localValue: import("vue").WritableComputedRef; + opcoes: { + rotulo: string; + placeholder?: string; + } & { + linhas?: number; + limiteCaracteres?: number; + limpavel?: boolean; + erro?: boolean; + mensagensErro?: string | string[]; + dica?: string; + dicaPersistente?: boolean; + densidade?: import("../../tipos/entrada.js").CampoDensidade; + variante?: import("../../tipos/entrada.js").CampoVariante; + }; + }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { + "update:value": (_v: string | null | undefined) => true; + input: (_v: string | null | undefined) => true; + change: (_v: string | null | undefined) => true; + focus: () => true; + blur: () => true; + }, string, import("vue").PublicProps, Readonly; + default: undefined; + }; + opcoes: { + type: import("vue").PropType<{ + rotulo: string; + placeholder?: string; + } & { + linhas?: number; + limiteCaracteres?: number; + limpavel?: boolean; + erro?: boolean; + mensagensErro?: string | string[]; + dica?: string; + dicaPersistente?: boolean; + densidade?: import("../../tipos/entrada.js").CampoDensidade; + variante?: import("../../tipos/entrada.js").CampoVariante; + }>; + required: true; + }; + }>> & Readonly<{ + "onUpdate:value"?: ((_v: string | null | undefined) => any) | undefined; + onInput?: ((_v: string | null | undefined) => any) | undefined; + onChange?: ((_v: string | null | undefined) => any) | undefined; + onFocus?: (() => any) | undefined; + onBlur?: (() => any) | undefined; + }>, { + value: string | null | undefined; + }, {}, { + VTextarea: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autoGrow: boolean; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + noResize: boolean; + rows: string | number; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | true | undefined; + counterValue?: ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + maxHeight?: string | number | undefined; + maxRows?: string | number | undefined; + suffix?: string | undefined; + modelModifiers?: Record | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | {} | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & { + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + "onUpdate:rows"?: ((rows: number) => any) | undefined; + }, HTMLTextAreaElement & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, "isValid" | "reset" | "resetValidation" | "validate" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style")> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "$children" | "appendIcon" | "baseColor" | "class" | "color" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "maxWidth" | "minWidth" | "modelValue" | "name" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "onUpdate:modelValue" | "prependIcon" | "theme" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "validateOn" | "validationValue" | "width" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | {}; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { + "click:control": (e: MouseEvent) => true; + "mousedown:control": (e: MouseEvent) => true; + "update:focused": (focused: boolean) => true; + "update:modelValue": (val: string) => true; + "update:rows": (rows: number) => true; + }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, { + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autoGrow: boolean; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + noResize: boolean; + rows: string | number; + }, true, {}, import("vue").SlotsType import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + clear: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + counter: (arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, { + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autoGrow: boolean; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + noResize: boolean; + rows: string | number; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | true | undefined; + counterValue?: ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + maxHeight?: string | number | undefined; + maxRows?: string | number | undefined; + suffix?: string | undefined; + modelModifiers?: Record | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | {} | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & { + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + "onUpdate:rows"?: ((rows: number) => any) | undefined; + }, HTMLTextAreaElement & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, "isValid" | "reset" | "resetValidation" | "validate" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style")> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "$children" | "appendIcon" | "baseColor" | "class" | "color" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "maxWidth" | "minWidth" | "modelValue" | "name" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "onUpdate:modelValue" | "prependIcon" | "theme" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "validateOn" | "validationValue" | "width" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | {}; + }, {}, {}, {}, { + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autoGrow: boolean; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + noResize: boolean; + rows: string | number; + }>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autoGrow: boolean; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + noResize: boolean; + rows: string | number; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | true | undefined; + counterValue?: ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + maxHeight?: string | number | undefined; + maxRows?: string | number | undefined; + suffix?: string | undefined; + modelModifiers?: Record | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | {} | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & { + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + "onUpdate:rows"?: ((rows: number) => any) | undefined; + }, HTMLTextAreaElement & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + }, "disabled" | "style" | "density" | "error" | "direction" | "reset" | "isValid" | "resetValidation" | "validate" | "centerAffix" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules"> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & import("vue").ComponentCustomProperties & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "name" | "color" | "disabled" | keyof import("vue").VNodeProps | "class" | "style" | "label" | "density" | "error" | "id" | "width" | "direction" | "theme" | "appendIcon" | "baseColor" | "prependIcon" | "modelValue" | "$children" | "v-slots" | "v-slot:append" | "v-slot:default" | "v-slot:prepend" | "onUpdate:modelValue" | "centerAffix" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "onUpdate:focused" | "validateOn" | "validationValue" | "maxWidth" | "minWidth" | "iconColor" | "hideDetails" | "hint" | "onClick:prepend" | "onClick:append" | "v-slot:details" | "v-slot:message">, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | {}; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { + "click:control": (e: MouseEvent) => true; + "mousedown:control": (e: MouseEvent) => true; + "update:focused": (focused: boolean) => true; + "update:modelValue": (val: string) => true; + "update:rows": (rows: number) => true; + }, string, { + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autoGrow: boolean; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + noResize: boolean; + rows: string | number; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + clear: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + counter: (arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + theme: StringConstructor; + class: import("vue").PropType; + style: { + type: import("vue").PropType; + default: null; + }; + focused: BooleanConstructor; + "onUpdate:focused": import("vue").PropType<(args_0: boolean) => void>; + errorMessages: { + type: import("vue").PropType; + default: () => never[]; + }; + maxErrors: { + type: (NumberConstructor | StringConstructor)[]; + default: number; + }; + name: StringConstructor; + readonly: { + type: import("vue").PropType; + default: null; + }; + rules: { + type: import("vue").PropType | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]>; + default: () => never[]; + }; + modelValue: null; + validateOn: import("vue").PropType<("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined>; + validationValue: null; + density: { + type: import("vue").PropType; + default: string; + validator: (v: any) => boolean; + }; + rounded: { + type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + default: undefined; + }; + tile: BooleanConstructor; + maxWidth: (NumberConstructor | StringConstructor)[]; + minWidth: (NumberConstructor | StringConstructor)[]; + width: (NumberConstructor | StringConstructor)[]; + loading: (BooleanConstructor | StringConstructor)[]; + id: StringConstructor; + appendIcon: import("vue").PropType; + prependIcon: import("vue").PropType; + hideDetails: import("vue").PropType<"auto" | boolean>; + hideSpinButtons: BooleanConstructor; + hint: StringConstructor; + persistentHint: BooleanConstructor; + messages: { + type: import("vue").PropType; + default: () => never[]; + }; + direction: { + type: import("vue").PropType<"horizontal" | "vertical">; + default: string; + validator: (v: any) => boolean; + }; + "onClick:prepend": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:append": import("vue").PropType<(args_0: MouseEvent) => void>; + appendInnerIcon: import("vue").PropType; + bgColor: StringConstructor; + clearable: BooleanConstructor; + clearIcon: { + type: import("vue").PropType; + default: string; + }; + active: BooleanConstructor; + centerAffix: { + type: BooleanConstructor; + default: undefined; + }; + color: StringConstructor; + baseColor: StringConstructor; + dirty: BooleanConstructor; + disabled: { + type: BooleanConstructor; + default: null; + }; + glow: BooleanConstructor; + error: BooleanConstructor; + flat: BooleanConstructor; + iconColor: (BooleanConstructor | StringConstructor)[]; + label: StringConstructor; + persistentClear: BooleanConstructor; + prependInnerIcon: import("vue").PropType; + reverse: BooleanConstructor; + singleLine: BooleanConstructor; + variant: { + type: import("vue").PropType<"filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined">; + default: string; + validator: (v: any) => boolean; + }; + "onClick:clear": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:appendInner": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:prependInner": import("vue").PropType<(args_0: MouseEvent) => void>; + autocomplete: import("vue").PropType; + autoGrow: BooleanConstructor; + autofocus: BooleanConstructor; + counter: import("vue").PropType; + counterValue: import("vue").PropType<(value: any) => number>; + prefix: StringConstructor; + placeholder: StringConstructor; + persistentPlaceholder: BooleanConstructor; + persistentCounter: BooleanConstructor; + noResize: BooleanConstructor; + rows: { + type: (NumberConstructor | StringConstructor)[]; + default: number; + validator: (v: any) => boolean; + }; + maxHeight: { + type: (NumberConstructor | StringConstructor)[]; + validator: (v: any) => boolean; + }; + maxRows: { + type: (NumberConstructor | StringConstructor)[]; + validator: (v: any) => boolean; + }; + suffix: StringConstructor; + modelModifiers: import("vue").PropType>; + }, import("vue").ExtractPropTypes<{ + theme: StringConstructor; + class: import("vue").PropType; + style: { + type: import("vue").PropType; + default: null; + }; + focused: BooleanConstructor; + "onUpdate:focused": import("vue").PropType<(args_0: boolean) => void>; + errorMessages: { + type: import("vue").PropType; + default: () => never[]; + }; + maxErrors: { + type: (NumberConstructor | StringConstructor)[]; + default: number; + }; + name: StringConstructor; + readonly: { + type: import("vue").PropType; + default: null; + }; + rules: { + type: import("vue").PropType | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]>; + default: () => never[]; + }; + modelValue: null; + validateOn: import("vue").PropType<("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined>; + validationValue: null; + density: { + type: import("vue").PropType; + default: string; + validator: (v: any) => boolean; + }; + rounded: { + type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + default: undefined; + }; + tile: BooleanConstructor; + maxWidth: (NumberConstructor | StringConstructor)[]; + minWidth: (NumberConstructor | StringConstructor)[]; + width: (NumberConstructor | StringConstructor)[]; + loading: (BooleanConstructor | StringConstructor)[]; + id: StringConstructor; + appendIcon: import("vue").PropType; + prependIcon: import("vue").PropType; + hideDetails: import("vue").PropType<"auto" | boolean>; + hideSpinButtons: BooleanConstructor; + hint: StringConstructor; + persistentHint: BooleanConstructor; + messages: { + type: import("vue").PropType; + default: () => never[]; + }; + direction: { + type: import("vue").PropType<"horizontal" | "vertical">; + default: string; + validator: (v: any) => boolean; + }; + "onClick:prepend": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:append": import("vue").PropType<(args_0: MouseEvent) => void>; + appendInnerIcon: import("vue").PropType; + bgColor: StringConstructor; + clearable: BooleanConstructor; + clearIcon: { + type: import("vue").PropType; + default: string; + }; + active: BooleanConstructor; + centerAffix: { + type: BooleanConstructor; + default: undefined; + }; + color: StringConstructor; + baseColor: StringConstructor; + dirty: BooleanConstructor; + disabled: { + type: BooleanConstructor; + default: null; + }; + glow: BooleanConstructor; + error: BooleanConstructor; + flat: BooleanConstructor; + iconColor: (BooleanConstructor | StringConstructor)[]; + label: StringConstructor; + persistentClear: BooleanConstructor; + prependInnerIcon: import("vue").PropType; + reverse: BooleanConstructor; + singleLine: BooleanConstructor; + variant: { + type: import("vue").PropType<"filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined">; + default: string; + validator: (v: any) => boolean; + }; + "onClick:clear": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:appendInner": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:prependInner": import("vue").PropType<(args_0: MouseEvent) => void>; + autocomplete: import("vue").PropType; + autoGrow: BooleanConstructor; + autofocus: BooleanConstructor; + counter: import("vue").PropType; + counterValue: import("vue").PropType<(value: any) => number>; + prefix: StringConstructor; + placeholder: StringConstructor; + persistentPlaceholder: BooleanConstructor; + persistentCounter: BooleanConstructor; + noResize: BooleanConstructor; + rows: { + type: (NumberConstructor | StringConstructor)[]; + default: number; + validator: (v: any) => boolean; + }; + maxHeight: { + type: (NumberConstructor | StringConstructor)[]; + validator: (v: any) => boolean; + }; + maxRows: { + type: (NumberConstructor | StringConstructor)[]; + validator: (v: any) => boolean; + }; + suffix: StringConstructor; + modelModifiers: import("vue").PropType>; + }>>; + }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; + readonly selecao: import("vue").DefineComponent; + default: undefined; + }; + opcoes: { + type: import("vue").PropType<{ + rotulo: string; + placeholder?: string; + } & { + itens: () => { + chave: string; + rotulo: string; + }[] | Promise<{ + chave: string; + rotulo: string; + }[]>; + limpavel?: boolean; + erro?: boolean; + mensagensErro?: string | string[]; + dica?: string; + dicaPersistente?: boolean; + densidade?: import("../../tipos/entrada.js").CampoDensidade; + variante?: import("../../tipos/entrada.js").CampoVariante; + }>; + required: true; + }; + }>, { + attrs: { + [x: string]: unknown; + }; + emit: ((event: "update:value", _v: string | null | undefined) => void) & ((event: "input", _v: string | null | undefined) => void) & ((event: "change", _v: string | null | undefined) => void) & ((event: "focus") => void) & ((event: "blur") => void); + localValue: import("vue").WritableComputedRef; + opcoes: { + rotulo: string; + placeholder?: string; + } & { + itens: () => { + chave: string; + rotulo: string; + }[] | Promise<{ + chave: string; + rotulo: string; + }[]>; + limpavel?: boolean; + erro?: boolean; + mensagensErro?: string | string[]; + dica?: string; + dicaPersistente?: boolean; + densidade?: import("../../tipos/entrada.js").CampoDensidade; + variante?: import("../../tipos/entrada.js").CampoVariante; + }; + itens: import("vue").Ref<{ + chave: string; + rotulo: string; + }[], { + chave: string; + rotulo: string; + }[] | { + chave: string; + rotulo: string; + }[]>; + carregando: import("vue").Ref; + }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { + "update:value": (_v: string | null | undefined) => true; + input: (_v: string | null | undefined) => true; + change: (_v: string | null | undefined) => true; + focus: () => true; + blur: () => true; + }, string, import("vue").PublicProps, Readonly; + default: undefined; + }; + opcoes: { + type: import("vue").PropType<{ + rotulo: string; + placeholder?: string; + } & { + itens: () => { + chave: string; + rotulo: string; + }[] | Promise<{ + chave: string; + rotulo: string; + }[]>; + limpavel?: boolean; + erro?: boolean; + mensagensErro?: string | string[]; + dica?: string; + dicaPersistente?: boolean; + densidade?: import("../../tipos/entrada.js").CampoDensidade; + variante?: import("../../tipos/entrada.js").CampoVariante; + }>; + required: true; + }; + }>> & Readonly<{ + "onUpdate:value"?: ((_v: string | null | undefined) => any) | undefined; + onInput?: ((_v: string | null | undefined) => any) | undefined; + onChange?: ((_v: string | null | undefined) => any) | undefined; + onFocus?: (() => any) | undefined; + onBlur?: (() => any) | undefined; + }>, { + value: string | null | undefined; + }, {}, { + VSelect: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + transition: string | boolean | { + component: Component; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + itemChildren: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + itemType: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + role: string; + type: string; + closeText: string; + openText: string; + chips: boolean; + closableChips: boolean; + eager: boolean; + hideNoData: boolean; + hideSelected: boolean; + menu: boolean; + menuIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + noDataText: string; + openOnClear: boolean; + noAutoScroll: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + valueComparator?: typeof import("vuetify/lib/util/deepEqual.mjs").deepEqual | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + suffix?: string | undefined; + modelModifiers?: Record | undefined; + listProps?: (Partial<{ + style: import("vue").StyleValue; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + itemType: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + returnObject: boolean; + activatable: boolean; + selectable: boolean; + selectStrategy: import("vuetify/lib/composables/nested/nested.mjs").SelectStrategyProp; + openStrategy: import("vuetify/lib/composables/nested/nested.mjs").OpenStrategyProp; + mandatory: boolean; + itemsRegistration: import("vuetify/lib/composables/nested/nested.mjs").ItemsRegistrationType; + disabled: boolean; + filterable: boolean; + lines: "one" | "three" | "two" | false; + slim: boolean; + nav: boolean; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + border?: string | number | boolean | undefined; + density: import("vuetify/lib/composables/density.mjs").Density; + elevation?: string | number | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + color?: string | undefined; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + height?: string | number | undefined; + maxHeight?: string | number | undefined; + maxWidth?: string | number | undefined; + minHeight?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + itemType: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + returnObject: boolean; + valueComparator?: typeof import("vuetify/lib/util/deepEqual.mjs").deepEqual | undefined; + activatable: boolean; + selectable: boolean; + activeStrategy?: import("vuetify/lib/composables/nested/nested.mjs").ActiveStrategyProp | undefined; + selectStrategy: import("vuetify/lib/composables/nested/nested.mjs").SelectStrategyProp; + openStrategy: import("vuetify/lib/composables/nested/nested.mjs").OpenStrategyProp; + activated?: any; + mandatory: boolean; + itemsRegistration: import("vuetify/lib/composables/nested/nested.mjs").ItemsRegistrationType; + baseColor?: string | undefined; + activeColor?: string | undefined; + activeClass?: string | undefined; + bgColor?: string | undefined; + disabled: boolean; + filterable: boolean; + expandIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + collapseIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + lines: "one" | "three" | "two" | false; + slim: boolean; + prependGap?: string | number | undefined; + indent?: string | number | undefined; + nav: boolean; + "onClick:activate"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => any) | undefined; + "onUpdate:activated"?: ((value: unknown) => any) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatable" | "density" | "disabled" | "filterable" | "itemType" | "itemsRegistration" | "lines" | "mandatory" | "nav" | "openStrategy" | "returnObject" | "rounded" | "selectStrategy" | "selectable" | "slim" | "style" | "tag" | "tile" | "variant"> & { + items?: readonly any[] | undefined; + itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemChildren?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + selected?: unknown; + "onUpdate:selected"?: ((value: unknown) => void) | undefined; + "onClick:open"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => void) | undefined; + "onClick:select"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => void) | undefined; + opened?: unknown; + "onUpdate:opened"?: ((value: unknown) => void) | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + title?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + subtitle?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + item?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + divider?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + subheader?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + header?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + title?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + subtitle?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + item?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + divider?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + subheader?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + header?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:divider"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:header"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:item"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:subheader"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:subtitle"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:title"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + }) | undefined; + menuProps?: (Partial<{ + style: import("vue").StyleValue; + locationStrategy: "connected" | "static" | import("vuetify/lib/types.mjs").LocationStrategyFunction; + location: import("vuetify/lib/types.mjs").Anchor | undefined; + origin: "auto" | "overlap" | import("vuetify/lib/types.mjs").Anchor; + stickToTarget: boolean; + viewportMargin: string | number; + scrollStrategy: "block" | "close" | "none" | "reposition" | import("vuetify/lib/types.mjs").ScrollStrategyFunction; + closeDelay: string | number; + openDelay: string | number; + activatorProps: Record; + openOnClick: boolean; + openOnHover: boolean; + openOnFocus: boolean; + closeOnContentClick: boolean; + retainFocus: boolean; + captureFocus: boolean; + disableInitialFocus: boolean; + eager: boolean; + transition: string | boolean | { + component: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {}, true, {}, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, {} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, {}, {}, {}, {}>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, {}, {}, string, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + target: import("vue").PropType; + }, import("vue").ExtractPropTypes<{ + target: import("vue").PropType; + }>>; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + closeOnBack: boolean; + contained: boolean; + disabled: boolean; + noClickAnimation: boolean; + modelValue: boolean; + persistent: boolean; + scrim: string | boolean; + zIndex: string | number; + submenu: boolean; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + $children?: { + default?: ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + activator?: ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + activator?: false | ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + } | undefined; + locationStrategy: "connected" | "static" | import("vuetify/lib/types.mjs").LocationStrategyFunction; + location: import("vuetify/lib/types.mjs").Anchor; + origin: "auto" | "overlap" | import("vuetify/lib/types.mjs").Anchor; + offset?: string | number | number[] | undefined; + stickToTarget: boolean; + viewportMargin: string | number; + scrollStrategy: "block" | "close" | "none" | "reposition" | import("vuetify/lib/types.mjs").ScrollStrategyFunction; + height?: string | number | undefined; + maxHeight?: string | number | undefined; + maxWidth?: string | number | undefined; + minHeight?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + closeDelay: string | number; + openDelay: string | number; + target?: "cursor" | "parent" | Element | [x: number, y: number] | import("vue").ComponentPublicInstance | (string & {}) | undefined; + activator?: "parent" | Element | import("vue").ComponentPublicInstance | (string & {}) | undefined; + activatorProps: Record; + openOnClick?: boolean | undefined; + openOnHover: boolean; + openOnFocus?: boolean | undefined; + closeOnContentClick: boolean; + retainFocus: boolean; + captureFocus: boolean; + disableInitialFocus: boolean; + eager: boolean; + transition: string | boolean | { + component: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {}, true, {}, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, {} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, {}, {}, {}, {}>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, {}, {}, string, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + target: import("vue").PropType; + }, import("vue").ExtractPropTypes<{ + target: import("vue").PropType; + }>>; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + attach?: string | boolean | Element | undefined; + closeOnBack: boolean; + contained: boolean; + contentClass?: any; + contentProps?: any; + disabled: boolean; + opacity?: string | number | undefined; + noClickAnimation: boolean; + modelValue: boolean; + persistent: boolean; + scrim: string | boolean; + zIndex: string | number; + id?: string | undefined; + submenu: boolean; + "onUpdate:modelValue"?: ((value: boolean) => any) | undefined; + "v-slot:activator"?: false | ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">) | undefined; + itemColor?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:menu"?: ((ue: boolean) => any) | undefined; + }, { + isFocused: import("vue").ShallowRef; + menu: import("vue").WritableComputedRef; + select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem, set?: boolean | null) => void; + } & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded?: string | number | boolean | undefined; + tile: boolean; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + autofocus: boolean; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + persistentPlaceholder: boolean; + persistentCounter: boolean; + suffix?: string | undefined; + role?: string | undefined; + type: string; + modelModifiers?: Record | undefined; + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "autofocus" | "centerAffix" | "clearIcon" | "clearable" | "density" | "direction" | "dirty" | "disabled" | "error" | "errorMessages" | "flat" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "readonly" | "reverse" | "rounded" | "rules" | "singleLine" | "style" | "tile" | "type" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: (() => import("vue").VNode[]) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: ((event: "click:control", e: MouseEvent) => void) & ((event: "mousedown:control", e: MouseEvent) => void) & ((event: "update:focused", focused: boolean) => void) & ((event: "update:modelValue", val: string) => void); + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + suffix?: string | undefined; + role?: string | undefined; + modelModifiers?: Record | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & { + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + }, HTMLInputElement & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, "isValid" | "reset" | "resetValidation" | "validate" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style")> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "$children" | "appendIcon" | "baseColor" | "class" | "color" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "maxWidth" | "minWidth" | "modelValue" | "name" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "onUpdate:modelValue" | "prependIcon" | "theme" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "validateOn" | "validationValue" | "width" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style") | keyof import("vue").VNodeProps>, `$${any}`> & Omit & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + details: boolean; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: ((arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: "update:focused", focused: boolean) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }, {}, string, import("vue").SlotsType; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: (arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, "controlRef" | "fieldIconColor" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant")> & import("vue").ShallowUnwrapRef<{ + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VField/VField.mjs").VFieldSlots>, "$children" | "appendInnerIcon" | "baseColor" | "bgColor" | "class" | "color" | "iconColor" | "id" | "label" | "loading" | "modelValue" | "onClick:appendInner" | "onClick:clear" | "onClick:prependInner" | "onUpdate:focused" | "onUpdate:modelValue" | "prependInnerIcon" | "theme" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + } | {}; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { + "click:control": (e: MouseEvent) => true; + "mousedown:control": (e: MouseEvent) => true; + "update:focused": (focused: boolean) => true; + "update:modelValue": (val: string) => true; + }, string, { + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + clear: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: () => import("vue").VNode[]; + counter: (arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + suffix?: string | undefined; + role?: string | undefined; + modelModifiers?: Record | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & { + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + }, "ATTRIBUTE_NODE" | "CDATA_SECTION_NODE" | "COMMENT_NODE" | "DOCUMENT_FRAGMENT_NODE" | "DOCUMENT_NODE" | "DOCUMENT_POSITION_CONTAINED_BY" | "DOCUMENT_POSITION_CONTAINS" | "DOCUMENT_POSITION_DISCONNECTED" | "DOCUMENT_POSITION_FOLLOWING" | "DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC" | "DOCUMENT_POSITION_PRECEDING" | "DOCUMENT_TYPE_NODE" | "ELEMENT_NODE" | "ENTITY_NODE" | "ENTITY_REFERENCE_NODE" | "NOTATION_NODE" | "PROCESSING_INSTRUCTION_NODE" | "TEXT_NODE" | "_" | "_allExposed" | "_clickOutside" | "_mutate" | "_observe" | "_onResize" | "_onScroll" | "_ripple" | "_touchHandlers" | "_transitionInitialStyles" | "accept" | "accessKey" | "accessKeyLabel" | "active" | "addEventListener" | "after" | "align" | "alt" | "animate" | "append" | "appendChild" | "ariaAtomic" | "ariaAutoComplete" | "ariaBrailleLabel" | "ariaBrailleRoleDescription" | "ariaBusy" | "ariaChecked" | "ariaColCount" | "ariaColIndex" | "ariaColIndexText" | "ariaColSpan" | "ariaCurrent" | "ariaDescription" | "ariaDisabled" | "ariaExpanded" | "ariaHasPopup" | "ariaHidden" | "ariaInvalid" | "ariaKeyShortcuts" | "ariaLabel" | "ariaLevel" | "ariaLive" | "ariaModal" | "ariaMultiLine" | "ariaMultiSelectable" | "ariaOrientation" | "ariaPlaceholder" | "ariaPosInSet" | "ariaPressed" | "ariaReadOnly" | "ariaRelevant" | "ariaRequired" | "ariaRoleDescription" | "ariaRowCount" | "ariaRowIndex" | "ariaRowIndexText" | "ariaRowSpan" | "ariaSelected" | "ariaSetSize" | "ariaSort" | "ariaValueMax" | "ariaValueMin" | "ariaValueNow" | "ariaValueText" | "assignedSlot" | "attachInternals" | "attachShadow" | "attributeStyleMap" | "attributes" | "autocapitalize" | "autocomplete" | "autofocus" | "baseURI" | "before" | "blur" | "capture" | "centerAffix" | "checkValidity" | "checkVisibility" | "checked" | "childElementCount" | "childNodes" | "children" | "classList" | "className" | "clearIcon" | "clearable" | "click" | "clientHeight" | "clientLeft" | "clientTop" | "clientWidth" | "cloneNode" | "closest" | "compareDocumentPosition" | "computedStyleMap" | "contains" | "contentEditable" | "controlRef" | "currentCSSZoom" | "dataset" | "defaultChecked" | "defaultValue" | "density" | "dir" | "dirName" | "direction" | "dirty" | "disabled" | "dispatchEvent" | "draggable" | "enterKeyHint" | "error" | "errorMessages" | "fieldIconColor" | "files" | "firstChild" | "firstElementChild" | "flat" | "focus" | "focused" | "form" | "formAction" | "formEnctype" | "formMethod" | "formNoValidate" | "formTarget" | "getAnimations" | "getAttribute" | "getAttributeNS" | "getAttributeNames" | "getAttributeNode" | "getAttributeNodeNS" | "getBoundingClientRect" | "getClientRects" | "getElementsByClassName" | "getElementsByTagName" | "getElementsByTagNameNS" | "getHTML" | "getRootNode" | "glow" | "hasAttribute" | "hasAttributeNS" | "hasAttributes" | "hasChildNodes" | "hasPointerCapture" | "height" | "hidden" | "hidePopover" | "hideSpinButtons" | "id" | "indeterminate" | "inert" | "innerHTML" | "innerText" | "inputMode" | "insertAdjacentElement" | "insertAdjacentHTML" | "insertAdjacentText" | "insertBefore" | "isConnected" | "isContentEditable" | "isDefaultNamespace" | "isEqualNode" | "isSameNode" | "isValid" | "labels" | "lang" | "lastChild" | "lastElementChild" | "list" | "localName" | "lookupNamespaceURI" | "lookupPrefix" | "matches" | "max" | "maxErrors" | "maxLength" | "messages" | "min" | "minLength" | "multiple" | "name" | "namespaceURI" | "nextElementSibling" | "nextSibling" | "nodeName" | "nodeType" | "nodeValue" | "nonce" | "normalize" | "offsetHeight" | "offsetLeft" | "offsetParent" | "offsetTop" | "offsetWidth" | "onabort" | "onanimationcancel" | "onanimationend" | "onanimationiteration" | "onanimationstart" | "onauxclick" | "onbeforeinput" | "onbeforetoggle" | "onblur" | "oncancel" | "oncanplay" | "oncanplaythrough" | "onchange" | "onclick" | "onclose" | "oncontextlost" | "oncontextmenu" | "oncontextrestored" | "oncopy" | "oncuechange" | "oncut" | "ondblclick" | "ondrag" | "ondragend" | "ondragenter" | "ondragleave" | "ondragover" | "ondragstart" | "ondrop" | "ondurationchange" | "onemptied" | "onended" | "onerror" | "onfocus" | "onformdata" | "onfullscreenchange" | "onfullscreenerror" | "ongotpointercapture" | "oninput" | "oninvalid" | "onkeydown" | "onkeypress" | "onkeyup" | "onload" | "onloadeddata" | "onloadedmetadata" | "onloadstart" | "onlostpointercapture" | "onmousedown" | "onmouseenter" | "onmouseleave" | "onmousemove" | "onmouseout" | "onmouseover" | "onmouseup" | "onpaste" | "onpause" | "onplay" | "onplaying" | "onpointercancel" | "onpointerdown" | "onpointerenter" | "onpointerleave" | "onpointermove" | "onpointerout" | "onpointerover" | "onpointerup" | "onprogress" | "onratechange" | "onreset" | "onresize" | "onscroll" | "onscrollend" | "onsecuritypolicyviolation" | "onseeked" | "onseeking" | "onselect" | "onselectionchange" | "onselectstart" | "onslotchange" | "onstalled" | "onsubmit" | "onsuspend" | "ontimeupdate" | "ontoggle" | "ontouchcancel" | "ontouchend" | "ontouchmove" | "ontouchstart" | "ontransitioncancel" | "ontransitionend" | "ontransitionrun" | "ontransitionstart" | "onvolumechange" | "onwaiting" | "onwebkitanimationend" | "onwebkitanimationiteration" | "onwebkitanimationstart" | "onwebkittransitionend" | "onwheel" | "outerHTML" | "outerText" | "ownerDocument" | "parentElement" | "parentNode" | "part" | "pattern" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "placeholder" | "popover" | "popoverTargetAction" | "popoverTargetElement" | "prefix" | "prepend" | "previousElementSibling" | "previousSibling" | "querySelector" | "querySelectorAll" | "readOnly" | "readonly" | "releasePointerCapture" | "remove" | "removeAttribute" | "removeAttributeNS" | "removeAttributeNode" | "removeChild" | "removeEventListener" | "replaceChild" | "replaceChildren" | "replaceWith" | "reportValidity" | "requestFullscreen" | "requestPointerLock" | "required" | "reset" | "resetValidation" | "reverse" | "role" | "rounded" | "rules" | "scroll" | "scrollBy" | "scrollHeight" | "scrollIntoView" | "scrollLeft" | "scrollTo" | "scrollTop" | "scrollWidth" | "select" | "selectionDirection" | "selectionEnd" | "selectionStart" | "setAttribute" | "setAttributeNS" | "setAttributeNode" | "setAttributeNodeNS" | "setCustomValidity" | "setHTMLUnsafe" | "setPointerCapture" | "setRangeText" | "setSelectionRange" | "shadowRoot" | "showPicker" | "showPopover" | "singleLine" | "size" | "slot" | "spellcheck" | "src" | "step" | "stepDown" | "stepUp" | "style" | "tabIndex" | "tagName" | "textContent" | "tile" | "title" | "toggleAttribute" | "togglePopover" | "translate" | "type" | "useMap" | "validate" | "validationMessage" | "validity" | "value" | "valueAsDate" | "valueAsNumber" | "variant" | "webkitEntries" | "webkitMatchesSelector" | "webkitdirectory" | "width" | "willValidate" | "writingSuggestions"> & import("vue").ShallowUnwrapRef | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, "isValid" | "reset" | "resetValidation" | "validate" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style")> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "$children" | "appendIcon" | "baseColor" | "class" | "color" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "maxWidth" | "minWidth" | "modelValue" | "name" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "onUpdate:modelValue" | "prependIcon" | "theme" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "validateOn" | "validationValue" | "width" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style") | keyof import("vue").VNodeProps>, `$${any}`> & Omit & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + details: boolean; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: ((arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: "update:focused", focused: boolean) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }, {}, string, import("vue").SlotsType; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: (arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, "controlRef" | "fieldIconColor" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant")> & import("vue").ShallowUnwrapRef<{ + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VField/VField.mjs").VFieldSlots>, "$children" | "appendInnerIcon" | "baseColor" | "bgColor" | "class" | "color" | "iconColor" | "id" | "label" | "loading" | "modelValue" | "onClick:appendInner" | "onClick:clear" | "onClick:prependInner" | "onUpdate:focused" | "onUpdate:modelValue" | "prependInnerIcon" | "theme" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + } | {}; + }> & {} & import("vue").ComponentCustomProperties & {}, "$children" | "appendIcon" | "appendInnerIcon" | "autocomplete" | "baseColor" | "bgColor" | "class" | "color" | "counter" | "counterValue" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "loading" | "maxWidth" | "minWidth" | "modelModifiers" | "modelValue" | "name" | "onClick:append" | "onClick:appendInner" | "onClick:clear" | "onClick:control" | "onClick:prepend" | "onClick:prependInner" | "onMousedown:control" | "onUpdate:focused" | "onUpdate:modelValue" | "placeholder" | "prefix" | "prependIcon" | "prependInnerIcon" | "role" | "suffix" | "theme" | "v-slot:append" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:counter" | "v-slot:default" | "v-slot:details" | "v-slot:label" | "v-slot:loader" | "v-slot:message" | "v-slot:prepend" | "v-slot:prepend-inner" | "v-slots" | "validateOn" | "validationValue" | "width" | ("active" | "autofocus" | "centerAffix" | "clearIcon" | "clearable" | "density" | "direction" | "dirty" | "disabled" | "error" | "errorMessages" | "flat" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "readonly" | "reverse" | "rounded" | "rules" | "singleLine" | "style" | "tile" | "type" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + isFocused: import("vue").ShallowRef; + menu: import("vue").WritableComputedRef; + select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem, set?: boolean | null) => void; + } | (HTMLInputElement & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, "isValid" | "reset" | "resetValidation" | "validate" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style")> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "$children" | "appendIcon" | "baseColor" | "class" | "color" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "maxWidth" | "minWidth" | "modelValue" | "name" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "onUpdate:modelValue" | "prependIcon" | "theme" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "validateOn" | "validationValue" | "width" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style") | keyof import("vue").VNodeProps>, `$${any}`> & Omit & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + details: boolean; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: ((arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: "update:focused", focused: boolean) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }, {}, string, import("vue").SlotsType; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: (arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, "controlRef" | "fieldIconColor" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant")> & import("vue").ShallowUnwrapRef<{ + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VField/VField.mjs").VFieldSlots>, "$children" | "appendInnerIcon" | "baseColor" | "bgColor" | "class" | "color" | "iconColor" | "id" | "label" | "loading" | "modelValue" | "onClick:appendInner" | "onClick:clear" | "onClick:prependInner" | "onUpdate:focused" | "onUpdate:modelValue" | "prependInnerIcon" | "theme" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + } | {}; + }); + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + "update:menu": (ue: boolean) => true; + }, "$children" | "itemProps" | "itemTitle" | "itemValue" | "items" | "modelValue" | "multiple" | "returnObject" | "update:modelValue" | "v-slot:append" | "v-slot:append-inner" | "v-slot:append-item" | "v-slot:chip" | "v-slot:clear" | "v-slot:details" | "v-slot:divider" | "v-slot:item" | "v-slot:label" | "v-slot:loader" | "v-slot:message" | "v-slot:no-data" | "v-slot:prepend" | "v-slot:prepend-inner" | "v-slot:prepend-item" | "v-slot:selection" | "v-slot:subheader" | "v-slots">, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, { + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + transition: string | boolean | { + component: Component; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + itemChildren: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemType: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + role: string; + type: string; + closeText: string; + openText: string; + chips: boolean; + closableChips: boolean; + eager: boolean; + hideNoData: boolean; + hideSelected: boolean; + menu: boolean; + menuIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + noDataText: string; + openOnClear: boolean; + noAutoScroll: boolean; + }, true, {}, import("vue").SlotsType import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + clear: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + item: (arg: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + props: Record; + }) => import("vue").VNode[]; + chip: (arg: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + props: Record; + }) => import("vue").VNode[]; + selection: (arg: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + }) => import("vue").VNode[]; + subheader: (arg: { + props: Record; + index: number; + }) => import("vue").VNode[]; + divider: (arg: { + props: Record; + index: number; + }) => import("vue").VNode[]; + "prepend-item": () => import("vue").VNode[]; + "append-item": () => import("vue").VNode[]; + "no-data": () => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, { + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + transition: string | boolean | { + component: Component; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + itemChildren: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + itemType: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + role: string; + type: string; + closeText: string; + openText: string; + chips: boolean; + closableChips: boolean; + eager: boolean; + hideNoData: boolean; + hideSelected: boolean; + menu: boolean; + menuIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + noDataText: string; + openOnClear: boolean; + noAutoScroll: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + valueComparator?: typeof import("vuetify/lib/util/deepEqual.mjs").deepEqual | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + suffix?: string | undefined; + modelModifiers?: Record | undefined; + listProps?: (Partial<{ + style: import("vue").StyleValue; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + itemType: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + returnObject: boolean; + activatable: boolean; + selectable: boolean; + selectStrategy: import("vuetify/lib/composables/nested/nested.mjs").SelectStrategyProp; + openStrategy: import("vuetify/lib/composables/nested/nested.mjs").OpenStrategyProp; + mandatory: boolean; + itemsRegistration: import("vuetify/lib/composables/nested/nested.mjs").ItemsRegistrationType; + disabled: boolean; + filterable: boolean; + lines: "one" | "three" | "two" | false; + slim: boolean; + nav: boolean; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + border?: string | number | boolean | undefined; + density: import("vuetify/lib/composables/density.mjs").Density; + elevation?: string | number | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + color?: string | undefined; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + height?: string | number | undefined; + maxHeight?: string | number | undefined; + maxWidth?: string | number | undefined; + minHeight?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + itemType: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + returnObject: boolean; + valueComparator?: typeof import("vuetify/lib/util/deepEqual.mjs").deepEqual | undefined; + activatable: boolean; + selectable: boolean; + activeStrategy?: import("vuetify/lib/composables/nested/nested.mjs").ActiveStrategyProp | undefined; + selectStrategy: import("vuetify/lib/composables/nested/nested.mjs").SelectStrategyProp; + openStrategy: import("vuetify/lib/composables/nested/nested.mjs").OpenStrategyProp; + activated?: any; + mandatory: boolean; + itemsRegistration: import("vuetify/lib/composables/nested/nested.mjs").ItemsRegistrationType; + baseColor?: string | undefined; + activeColor?: string | undefined; + activeClass?: string | undefined; + bgColor?: string | undefined; + disabled: boolean; + filterable: boolean; + expandIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + collapseIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + lines: "one" | "three" | "two" | false; + slim: boolean; + prependGap?: string | number | undefined; + indent?: string | number | undefined; + nav: boolean; + "onClick:activate"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => any) | undefined; + "onUpdate:activated"?: ((value: unknown) => any) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatable" | "density" | "disabled" | "filterable" | "itemType" | "itemsRegistration" | "lines" | "mandatory" | "nav" | "openStrategy" | "returnObject" | "rounded" | "selectStrategy" | "selectable" | "slim" | "style" | "tag" | "tile" | "variant"> & { + items?: readonly any[] | undefined; + itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemChildren?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + selected?: unknown; + "onUpdate:selected"?: ((value: unknown) => void) | undefined; + "onClick:open"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => void) | undefined; + "onClick:select"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => void) | undefined; + opened?: unknown; + "onUpdate:opened"?: ((value: unknown) => void) | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + title?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + subtitle?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + item?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + divider?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + subheader?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + header?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + title?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + subtitle?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + item?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + divider?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + subheader?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + header?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:divider"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:header"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:item"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:subheader"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:subtitle"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:title"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + }) | undefined; + menuProps?: (Partial<{ + style: import("vue").StyleValue; + locationStrategy: "connected" | "static" | import("vuetify/lib/types.mjs").LocationStrategyFunction; + location: import("vuetify/lib/types.mjs").Anchor | undefined; + origin: "auto" | "overlap" | import("vuetify/lib/types.mjs").Anchor; + stickToTarget: boolean; + viewportMargin: string | number; + scrollStrategy: "block" | "close" | "none" | "reposition" | import("vuetify/lib/types.mjs").ScrollStrategyFunction; + closeDelay: string | number; + openDelay: string | number; + activatorProps: Record; + openOnClick: boolean; + openOnHover: boolean; + openOnFocus: boolean; + closeOnContentClick: boolean; + retainFocus: boolean; + captureFocus: boolean; + disableInitialFocus: boolean; + eager: boolean; + transition: string | boolean | { + component: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {}, true, {}, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, {} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, {}, {}, {}, {}>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, {}, {}, string, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + target: import("vue").PropType; + }, import("vue").ExtractPropTypes<{ + target: import("vue").PropType; + }>>; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + closeOnBack: boolean; + contained: boolean; + disabled: boolean; + noClickAnimation: boolean; + modelValue: boolean; + persistent: boolean; + scrim: string | boolean; + zIndex: string | number; + submenu: boolean; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + $children?: { + default?: ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + activator?: ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + activator?: false | ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + } | undefined; + locationStrategy: "connected" | "static" | import("vuetify/lib/types.mjs").LocationStrategyFunction; + location: import("vuetify/lib/types.mjs").Anchor; + origin: "auto" | "overlap" | import("vuetify/lib/types.mjs").Anchor; + offset?: string | number | number[] | undefined; + stickToTarget: boolean; + viewportMargin: string | number; + scrollStrategy: "block" | "close" | "none" | "reposition" | import("vuetify/lib/types.mjs").ScrollStrategyFunction; + height?: string | number | undefined; + maxHeight?: string | number | undefined; + maxWidth?: string | number | undefined; + minHeight?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + closeDelay: string | number; + openDelay: string | number; + target?: "cursor" | "parent" | Element | [x: number, y: number] | import("vue").ComponentPublicInstance | (string & {}) | undefined; + activator?: "parent" | Element | import("vue").ComponentPublicInstance | (string & {}) | undefined; + activatorProps: Record; + openOnClick?: boolean | undefined; + openOnHover: boolean; + openOnFocus?: boolean | undefined; + closeOnContentClick: boolean; + retainFocus: boolean; + captureFocus: boolean; + disableInitialFocus: boolean; + eager: boolean; + transition: string | boolean | { + component: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {}, true, {}, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, {} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, {}, {}, {}, {}>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, {}, {}, string, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + target: import("vue").PropType; + }, import("vue").ExtractPropTypes<{ + target: import("vue").PropType; + }>>; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + attach?: string | boolean | Element | undefined; + closeOnBack: boolean; + contained: boolean; + contentClass?: any; + contentProps?: any; + disabled: boolean; + opacity?: string | number | undefined; + noClickAnimation: boolean; + modelValue: boolean; + persistent: boolean; + scrim: string | boolean; + zIndex: string | number; + id?: string | undefined; + submenu: boolean; + "onUpdate:modelValue"?: ((value: boolean) => any) | undefined; + "v-slot:activator"?: false | ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">) | undefined; + itemColor?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:menu"?: ((ue: boolean) => any) | undefined; + }, { + isFocused: import("vue").ShallowRef; + menu: import("vue").WritableComputedRef; + select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem, set?: boolean | null) => void; + } & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded?: string | number | boolean | undefined; + tile: boolean; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + autofocus: boolean; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + persistentPlaceholder: boolean; + persistentCounter: boolean; + suffix?: string | undefined; + role?: string | undefined; + type: string; + modelModifiers?: Record | undefined; + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "autofocus" | "centerAffix" | "clearIcon" | "clearable" | "density" | "direction" | "dirty" | "disabled" | "error" | "errorMessages" | "flat" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "readonly" | "reverse" | "rounded" | "rules" | "singleLine" | "style" | "tile" | "type" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: (() => import("vue").VNode[]) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: ((event: "click:control", e: MouseEvent) => void) & ((event: "mousedown:control", e: MouseEvent) => void) & ((event: "update:focused", focused: boolean) => void) & ((event: "update:modelValue", val: string) => void); + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + suffix?: string | undefined; + role?: string | undefined; + modelModifiers?: Record | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & { + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + }, HTMLInputElement & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, "isValid" | "reset" | "resetValidation" | "validate" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style")> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "$children" | "appendIcon" | "baseColor" | "class" | "color" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "maxWidth" | "minWidth" | "modelValue" | "name" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "onUpdate:modelValue" | "prependIcon" | "theme" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "validateOn" | "validationValue" | "width" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style") | keyof import("vue").VNodeProps>, `$${any}`> & Omit & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + details: boolean; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: ((arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: "update:focused", focused: boolean) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }, {}, string, import("vue").SlotsType; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: (arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, "controlRef" | "fieldIconColor" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant")> & import("vue").ShallowUnwrapRef<{ + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VField/VField.mjs").VFieldSlots>, "$children" | "appendInnerIcon" | "baseColor" | "bgColor" | "class" | "color" | "iconColor" | "id" | "label" | "loading" | "modelValue" | "onClick:appendInner" | "onClick:clear" | "onClick:prependInner" | "onUpdate:focused" | "onUpdate:modelValue" | "prependInnerIcon" | "theme" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + } | {}; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { + "click:control": (e: MouseEvent) => true; + "mousedown:control": (e: MouseEvent) => true; + "update:focused": (focused: boolean) => true; + "update:modelValue": (val: string) => true; + }, string, { + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + clear: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: () => import("vue").VNode[]; + counter: (arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + suffix?: string | undefined; + role?: string | undefined; + modelModifiers?: Record | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & { + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + }, "ATTRIBUTE_NODE" | "CDATA_SECTION_NODE" | "COMMENT_NODE" | "DOCUMENT_FRAGMENT_NODE" | "DOCUMENT_NODE" | "DOCUMENT_POSITION_CONTAINED_BY" | "DOCUMENT_POSITION_CONTAINS" | "DOCUMENT_POSITION_DISCONNECTED" | "DOCUMENT_POSITION_FOLLOWING" | "DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC" | "DOCUMENT_POSITION_PRECEDING" | "DOCUMENT_TYPE_NODE" | "ELEMENT_NODE" | "ENTITY_NODE" | "ENTITY_REFERENCE_NODE" | "NOTATION_NODE" | "PROCESSING_INSTRUCTION_NODE" | "TEXT_NODE" | "_" | "_allExposed" | "_clickOutside" | "_mutate" | "_observe" | "_onResize" | "_onScroll" | "_ripple" | "_touchHandlers" | "_transitionInitialStyles" | "accept" | "accessKey" | "accessKeyLabel" | "active" | "addEventListener" | "after" | "align" | "alt" | "animate" | "append" | "appendChild" | "ariaAtomic" | "ariaAutoComplete" | "ariaBrailleLabel" | "ariaBrailleRoleDescription" | "ariaBusy" | "ariaChecked" | "ariaColCount" | "ariaColIndex" | "ariaColIndexText" | "ariaColSpan" | "ariaCurrent" | "ariaDescription" | "ariaDisabled" | "ariaExpanded" | "ariaHasPopup" | "ariaHidden" | "ariaInvalid" | "ariaKeyShortcuts" | "ariaLabel" | "ariaLevel" | "ariaLive" | "ariaModal" | "ariaMultiLine" | "ariaMultiSelectable" | "ariaOrientation" | "ariaPlaceholder" | "ariaPosInSet" | "ariaPressed" | "ariaReadOnly" | "ariaRelevant" | "ariaRequired" | "ariaRoleDescription" | "ariaRowCount" | "ariaRowIndex" | "ariaRowIndexText" | "ariaRowSpan" | "ariaSelected" | "ariaSetSize" | "ariaSort" | "ariaValueMax" | "ariaValueMin" | "ariaValueNow" | "ariaValueText" | "assignedSlot" | "attachInternals" | "attachShadow" | "attributeStyleMap" | "attributes" | "autocapitalize" | "autocomplete" | "autofocus" | "baseURI" | "before" | "blur" | "capture" | "centerAffix" | "checkValidity" | "checkVisibility" | "checked" | "childElementCount" | "childNodes" | "children" | "classList" | "className" | "clearIcon" | "clearable" | "click" | "clientHeight" | "clientLeft" | "clientTop" | "clientWidth" | "cloneNode" | "closest" | "compareDocumentPosition" | "computedStyleMap" | "contains" | "contentEditable" | "controlRef" | "currentCSSZoom" | "dataset" | "defaultChecked" | "defaultValue" | "density" | "dir" | "dirName" | "direction" | "dirty" | "disabled" | "dispatchEvent" | "draggable" | "enterKeyHint" | "error" | "errorMessages" | "fieldIconColor" | "files" | "firstChild" | "firstElementChild" | "flat" | "focus" | "focused" | "form" | "formAction" | "formEnctype" | "formMethod" | "formNoValidate" | "formTarget" | "getAnimations" | "getAttribute" | "getAttributeNS" | "getAttributeNames" | "getAttributeNode" | "getAttributeNodeNS" | "getBoundingClientRect" | "getClientRects" | "getElementsByClassName" | "getElementsByTagName" | "getElementsByTagNameNS" | "getHTML" | "getRootNode" | "glow" | "hasAttribute" | "hasAttributeNS" | "hasAttributes" | "hasChildNodes" | "hasPointerCapture" | "height" | "hidden" | "hidePopover" | "hideSpinButtons" | "id" | "indeterminate" | "inert" | "innerHTML" | "innerText" | "inputMode" | "insertAdjacentElement" | "insertAdjacentHTML" | "insertAdjacentText" | "insertBefore" | "isConnected" | "isContentEditable" | "isDefaultNamespace" | "isEqualNode" | "isSameNode" | "isValid" | "labels" | "lang" | "lastChild" | "lastElementChild" | "list" | "localName" | "lookupNamespaceURI" | "lookupPrefix" | "matches" | "max" | "maxErrors" | "maxLength" | "messages" | "min" | "minLength" | "multiple" | "name" | "namespaceURI" | "nextElementSibling" | "nextSibling" | "nodeName" | "nodeType" | "nodeValue" | "nonce" | "normalize" | "offsetHeight" | "offsetLeft" | "offsetParent" | "offsetTop" | "offsetWidth" | "onabort" | "onanimationcancel" | "onanimationend" | "onanimationiteration" | "onanimationstart" | "onauxclick" | "onbeforeinput" | "onbeforetoggle" | "onblur" | "oncancel" | "oncanplay" | "oncanplaythrough" | "onchange" | "onclick" | "onclose" | "oncontextlost" | "oncontextmenu" | "oncontextrestored" | "oncopy" | "oncuechange" | "oncut" | "ondblclick" | "ondrag" | "ondragend" | "ondragenter" | "ondragleave" | "ondragover" | "ondragstart" | "ondrop" | "ondurationchange" | "onemptied" | "onended" | "onerror" | "onfocus" | "onformdata" | "onfullscreenchange" | "onfullscreenerror" | "ongotpointercapture" | "oninput" | "oninvalid" | "onkeydown" | "onkeypress" | "onkeyup" | "onload" | "onloadeddata" | "onloadedmetadata" | "onloadstart" | "onlostpointercapture" | "onmousedown" | "onmouseenter" | "onmouseleave" | "onmousemove" | "onmouseout" | "onmouseover" | "onmouseup" | "onpaste" | "onpause" | "onplay" | "onplaying" | "onpointercancel" | "onpointerdown" | "onpointerenter" | "onpointerleave" | "onpointermove" | "onpointerout" | "onpointerover" | "onpointerup" | "onprogress" | "onratechange" | "onreset" | "onresize" | "onscroll" | "onscrollend" | "onsecuritypolicyviolation" | "onseeked" | "onseeking" | "onselect" | "onselectionchange" | "onselectstart" | "onslotchange" | "onstalled" | "onsubmit" | "onsuspend" | "ontimeupdate" | "ontoggle" | "ontouchcancel" | "ontouchend" | "ontouchmove" | "ontouchstart" | "ontransitioncancel" | "ontransitionend" | "ontransitionrun" | "ontransitionstart" | "onvolumechange" | "onwaiting" | "onwebkitanimationend" | "onwebkitanimationiteration" | "onwebkitanimationstart" | "onwebkittransitionend" | "onwheel" | "outerHTML" | "outerText" | "ownerDocument" | "parentElement" | "parentNode" | "part" | "pattern" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "placeholder" | "popover" | "popoverTargetAction" | "popoverTargetElement" | "prefix" | "prepend" | "previousElementSibling" | "previousSibling" | "querySelector" | "querySelectorAll" | "readOnly" | "readonly" | "releasePointerCapture" | "remove" | "removeAttribute" | "removeAttributeNS" | "removeAttributeNode" | "removeChild" | "removeEventListener" | "replaceChild" | "replaceChildren" | "replaceWith" | "reportValidity" | "requestFullscreen" | "requestPointerLock" | "required" | "reset" | "resetValidation" | "reverse" | "role" | "rounded" | "rules" | "scroll" | "scrollBy" | "scrollHeight" | "scrollIntoView" | "scrollLeft" | "scrollTo" | "scrollTop" | "scrollWidth" | "select" | "selectionDirection" | "selectionEnd" | "selectionStart" | "setAttribute" | "setAttributeNS" | "setAttributeNode" | "setAttributeNodeNS" | "setCustomValidity" | "setHTMLUnsafe" | "setPointerCapture" | "setRangeText" | "setSelectionRange" | "shadowRoot" | "showPicker" | "showPopover" | "singleLine" | "size" | "slot" | "spellcheck" | "src" | "step" | "stepDown" | "stepUp" | "style" | "tabIndex" | "tagName" | "textContent" | "tile" | "title" | "toggleAttribute" | "togglePopover" | "translate" | "type" | "useMap" | "validate" | "validationMessage" | "validity" | "value" | "valueAsDate" | "valueAsNumber" | "variant" | "webkitEntries" | "webkitMatchesSelector" | "webkitdirectory" | "width" | "willValidate" | "writingSuggestions"> & import("vue").ShallowUnwrapRef | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, "isValid" | "reset" | "resetValidation" | "validate" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style")> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "$children" | "appendIcon" | "baseColor" | "class" | "color" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "maxWidth" | "minWidth" | "modelValue" | "name" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "onUpdate:modelValue" | "prependIcon" | "theme" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "validateOn" | "validationValue" | "width" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style") | keyof import("vue").VNodeProps>, `$${any}`> & Omit & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + details: boolean; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: ((arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: "update:focused", focused: boolean) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }, {}, string, import("vue").SlotsType; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: (arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, "controlRef" | "fieldIconColor" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant")> & import("vue").ShallowUnwrapRef<{ + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VField/VField.mjs").VFieldSlots>, "$children" | "appendInnerIcon" | "baseColor" | "bgColor" | "class" | "color" | "iconColor" | "id" | "label" | "loading" | "modelValue" | "onClick:appendInner" | "onClick:clear" | "onClick:prependInner" | "onUpdate:focused" | "onUpdate:modelValue" | "prependInnerIcon" | "theme" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + } | {}; + }> & {} & import("vue").ComponentCustomProperties & {}, "$children" | "appendIcon" | "appendInnerIcon" | "autocomplete" | "baseColor" | "bgColor" | "class" | "color" | "counter" | "counterValue" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "loading" | "maxWidth" | "minWidth" | "modelModifiers" | "modelValue" | "name" | "onClick:append" | "onClick:appendInner" | "onClick:clear" | "onClick:control" | "onClick:prepend" | "onClick:prependInner" | "onMousedown:control" | "onUpdate:focused" | "onUpdate:modelValue" | "placeholder" | "prefix" | "prependIcon" | "prependInnerIcon" | "role" | "suffix" | "theme" | "v-slot:append" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:counter" | "v-slot:default" | "v-slot:details" | "v-slot:label" | "v-slot:loader" | "v-slot:message" | "v-slot:prepend" | "v-slot:prepend-inner" | "v-slots" | "validateOn" | "validationValue" | "width" | ("active" | "autofocus" | "centerAffix" | "clearIcon" | "clearable" | "density" | "direction" | "dirty" | "disabled" | "error" | "errorMessages" | "flat" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "readonly" | "reverse" | "rounded" | "rules" | "singleLine" | "style" | "tile" | "type" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + isFocused: import("vue").ShallowRef; + menu: import("vue").WritableComputedRef; + select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem, set?: boolean | null) => void; + } | (HTMLInputElement & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, "isValid" | "reset" | "resetValidation" | "validate" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style")> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "$children" | "appendIcon" | "baseColor" | "class" | "color" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "maxWidth" | "minWidth" | "modelValue" | "name" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "onUpdate:modelValue" | "prependIcon" | "theme" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "validateOn" | "validationValue" | "width" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style") | keyof import("vue").VNodeProps>, `$${any}`> & Omit & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + details: boolean; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: ((arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: "update:focused", focused: boolean) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }, {}, string, import("vue").SlotsType; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: (arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, "controlRef" | "fieldIconColor" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant")> & import("vue").ShallowUnwrapRef<{ + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VField/VField.mjs").VFieldSlots>, "$children" | "appendInnerIcon" | "baseColor" | "bgColor" | "class" | "color" | "iconColor" | "id" | "label" | "loading" | "modelValue" | "onClick:appendInner" | "onClick:clear" | "onClick:prependInner" | "onUpdate:focused" | "onUpdate:modelValue" | "prependInnerIcon" | "theme" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + } | {}; + }); + }, {}, {}, {}, { + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + transition: string | boolean | { + component: Component; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + itemChildren: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemType: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + role: string; + type: string; + closeText: string; + openText: string; + chips: boolean; + closableChips: boolean; + eager: boolean; + hideNoData: boolean; + hideSelected: boolean; + menu: boolean; + menuIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + noDataText: string; + openOnClear: boolean; + noAutoScroll: boolean; + }>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + transition: string | boolean | { + component: Component; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + itemChildren: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + itemType: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + role: string; + type: string; + closeText: string; + openText: string; + chips: boolean; + closableChips: boolean; + eager: boolean; + hideNoData: boolean; + hideSelected: boolean; + menu: boolean; + menuIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + noDataText: string; + openOnClear: boolean; + noAutoScroll: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + valueComparator?: typeof import("vuetify/lib/util/deepEqual.mjs").deepEqual | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + suffix?: string | undefined; + modelModifiers?: Record | undefined; + listProps?: (Partial<{ + style: import("vue").StyleValue; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + itemType: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + returnObject: boolean; + activatable: boolean; + selectable: boolean; + selectStrategy: import("vuetify/lib/composables/nested/nested.mjs").SelectStrategyProp; + openStrategy: import("vuetify/lib/composables/nested/nested.mjs").OpenStrategyProp; + mandatory: boolean; + itemsRegistration: import("vuetify/lib/composables/nested/nested.mjs").ItemsRegistrationType; + disabled: boolean; + filterable: boolean; + lines: "one" | "three" | "two" | false; + slim: boolean; + nav: boolean; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + border?: string | number | boolean | undefined; + density: import("vuetify/lib/composables/density.mjs").Density; + elevation?: string | number | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + color?: string | undefined; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + height?: string | number | undefined; + maxHeight?: string | number | undefined; + maxWidth?: string | number | undefined; + minHeight?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + itemType: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + returnObject: boolean; + valueComparator?: typeof import("vuetify/lib/util/deepEqual.mjs").deepEqual | undefined; + activatable: boolean; + selectable: boolean; + activeStrategy?: import("vuetify/lib/composables/nested/nested.mjs").ActiveStrategyProp | undefined; + selectStrategy: import("vuetify/lib/composables/nested/nested.mjs").SelectStrategyProp; + openStrategy: import("vuetify/lib/composables/nested/nested.mjs").OpenStrategyProp; + activated?: any; + mandatory: boolean; + itemsRegistration: import("vuetify/lib/composables/nested/nested.mjs").ItemsRegistrationType; + baseColor?: string | undefined; + activeColor?: string | undefined; + activeClass?: string | undefined; + bgColor?: string | undefined; + disabled: boolean; + filterable: boolean; + expandIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + collapseIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + lines: "one" | "three" | "two" | false; + slim: boolean; + prependGap?: string | number | undefined; + indent?: string | number | undefined; + nav: boolean; + "onClick:activate"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => any) | undefined; + "onUpdate:activated"?: ((value: unknown) => any) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatable" | "density" | "disabled" | "filterable" | "itemType" | "itemsRegistration" | "lines" | "mandatory" | "nav" | "openStrategy" | "returnObject" | "rounded" | "selectStrategy" | "selectable" | "slim" | "style" | "tag" | "tile" | "variant"> & { + items?: readonly any[] | undefined; + itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemChildren?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + selected?: unknown; + "onUpdate:selected"?: ((value: unknown) => void) | undefined; + "onClick:open"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => void) | undefined; + "onClick:select"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => void) | undefined; + opened?: unknown; + "onUpdate:opened"?: ((value: unknown) => void) | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + title?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + subtitle?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + item?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + divider?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + subheader?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + header?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + title?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + subtitle?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + item?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + divider?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + subheader?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + header?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:divider"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:header"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:item"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:subheader"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:subtitle"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:title"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + }) | undefined; + menuProps?: (Partial<{ + style: import("vue").StyleValue; + locationStrategy: "connected" | "static" | import("vuetify/lib/types.mjs").LocationStrategyFunction; + location: import("vuetify/lib/types.mjs").Anchor | undefined; + origin: "auto" | "overlap" | import("vuetify/lib/types.mjs").Anchor; + stickToTarget: boolean; + viewportMargin: string | number; + scrollStrategy: "block" | "close" | "none" | "reposition" | import("vuetify/lib/types.mjs").ScrollStrategyFunction; + closeDelay: string | number; + openDelay: string | number; + activatorProps: Record; + openOnClick: boolean; + openOnHover: boolean; + openOnFocus: boolean; + closeOnContentClick: boolean; + retainFocus: boolean; + captureFocus: boolean; + disableInitialFocus: boolean; + eager: boolean; + transition: string | boolean | { + component: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {}, true, {}, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, {} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, {}, {}, {}, {}>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, {}, {}, string, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + target: import("vue").PropType; + }, import("vue").ExtractPropTypes<{ + target: import("vue").PropType; + }>>; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + closeOnBack: boolean; + contained: boolean; + disabled: boolean; + noClickAnimation: boolean; + modelValue: boolean; + persistent: boolean; + scrim: string | boolean; + zIndex: string | number; + submenu: boolean; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + $children?: { + default?: ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + activator?: ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + activator?: false | ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + } | undefined; + locationStrategy: "connected" | "static" | import("vuetify/lib/types.mjs").LocationStrategyFunction; + location: import("vuetify/lib/types.mjs").Anchor; + origin: "auto" | "overlap" | import("vuetify/lib/types.mjs").Anchor; + offset?: string | number | number[] | undefined; + stickToTarget: boolean; + viewportMargin: string | number; + scrollStrategy: "block" | "close" | "none" | "reposition" | import("vuetify/lib/types.mjs").ScrollStrategyFunction; + height?: string | number | undefined; + maxHeight?: string | number | undefined; + maxWidth?: string | number | undefined; + minHeight?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + closeDelay: string | number; + openDelay: string | number; + target?: "cursor" | "parent" | Element | [x: number, y: number] | import("vue").ComponentPublicInstance | (string & {}) | undefined; + activator?: "parent" | Element | import("vue").ComponentPublicInstance | (string & {}) | undefined; + activatorProps: Record; + openOnClick?: boolean | undefined; + openOnHover: boolean; + openOnFocus?: boolean | undefined; + closeOnContentClick: boolean; + retainFocus: boolean; + captureFocus: boolean; + disableInitialFocus: boolean; + eager: boolean; + transition: string | boolean | { + component: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {}, true, {}, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, {} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, {}, {}, {}, {}>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, {}, {}, string, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + target: import("vue").PropType; + }, import("vue").ExtractPropTypes<{ + target: import("vue").PropType; + }>>; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + attach?: string | boolean | Element | undefined; + closeOnBack: boolean; + contained: boolean; + contentClass?: any; + contentProps?: any; + disabled: boolean; + opacity?: string | number | undefined; + noClickAnimation: boolean; + modelValue: boolean; + persistent: boolean; + scrim: string | boolean; + zIndex: string | number; + id?: string | undefined; + submenu: boolean; + "onUpdate:modelValue"?: ((value: boolean) => any) | undefined; + "v-slot:activator"?: false | ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">) | undefined; + itemColor?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:menu"?: ((ue: boolean) => any) | undefined; + }, { + isFocused: import("vue").ShallowRef; + menu: import("vue").WritableComputedRef; + select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem, set?: boolean | null) => void; + } & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded?: string | number | boolean | undefined; + tile: boolean; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + autofocus: boolean; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + persistentPlaceholder: boolean; + persistentCounter: boolean; + suffix?: string | undefined; + role?: string | undefined; + type: string; + modelModifiers?: Record | undefined; + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "autofocus" | "centerAffix" | "clearIcon" | "clearable" | "density" | "direction" | "dirty" | "disabled" | "error" | "errorMessages" | "flat" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentClear" | "persistentCounter" | "persistentHint" | "persistentPlaceholder" | "readonly" | "reverse" | "rounded" | "rules" | "singleLine" | "style" | "tile" | "type" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: (() => import("vue").VNode[]) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: ((event: "click:control", e: MouseEvent) => void) & ((event: "mousedown:control", e: MouseEvent) => void) & ((event: "update:focused", focused: boolean) => void) & ((event: "update:modelValue", val: string) => void); + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + suffix?: string | undefined; + role?: string | undefined; + modelModifiers?: Record | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & { + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + }, HTMLInputElement & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, "isValid" | "reset" | "resetValidation" | "validate" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style")> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "$children" | "appendIcon" | "baseColor" | "class" | "color" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "maxWidth" | "minWidth" | "modelValue" | "name" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "onUpdate:modelValue" | "prependIcon" | "theme" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "validateOn" | "validationValue" | "width" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style") | keyof import("vue").VNodeProps>, `$${any}`> & Omit & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + details: boolean; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: ((arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: "update:focused", focused: boolean) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }, {}, string, import("vue").SlotsType; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: (arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, "controlRef" | "fieldIconColor" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant")> & import("vue").ShallowUnwrapRef<{ + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VField/VField.mjs").VFieldSlots>, "$children" | "appendInnerIcon" | "baseColor" | "bgColor" | "class" | "color" | "iconColor" | "id" | "label" | "loading" | "modelValue" | "onClick:appendInner" | "onClick:clear" | "onClick:prependInner" | "onUpdate:focused" | "onUpdate:modelValue" | "prependInnerIcon" | "theme" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + } | {}; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { + "click:control": (e: MouseEvent) => true; + "mousedown:control": (e: MouseEvent) => true; + "update:focused": (focused: boolean) => true; + "update:modelValue": (val: string) => true; + }, string, { + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + clear: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: () => import("vue").VNode[]; + counter: (arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + type: string; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + modelValue?: any; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + rounded?: string | number | boolean | undefined; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + loading?: string | boolean | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + autocomplete?: string | undefined; + counter?: string | number | boolean | undefined; + counterValue?: number | ((value: any) => number) | undefined; + prefix?: string | undefined; + placeholder?: string | undefined; + suffix?: string | undefined; + role?: string | undefined; + modelModifiers?: Record | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + counter?: ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + details?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + message?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + clear?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + label?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + loader?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + counter?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:append-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:clear"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:counter"?: false | ((arg: import("vuetify/lib/components/VCounter/VCounter.mjs").VCounterSlot) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:details"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNodeChild) | undefined; + "v-slot:loader"?: false | ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNodeChild) | undefined; + "v-slot:message"?: false | ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNodeChild) | undefined; + "v-slot:prepend-inner"?: false | ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNodeChild) | undefined; + } & { + "onClick:control"?: ((e: MouseEvent) => any) | undefined; + "onMousedown:control"?: ((e: MouseEvent) => any) | undefined; + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + "onUpdate:modelValue"?: ((val: string) => any) | undefined; + }, "flat" | "name" | "type" | "variant" | "size" | "disabled" | "reverse" | "min" | "max" | "value" | "required" | "focus" | "blur" | "inputMode" | "normalize" | "style" | "children" | "placeholder" | "form" | "select" | "title" | "animate" | "pattern" | "density" | "error" | "innerHTML" | "height" | "id" | "lang" | "width" | "role" | "direction" | "hidden" | "reset" | "slot" | "rounded" | "tile" | "draggable" | "prepend" | "append" | "click" | "step" | "isValid" | "resetValidation" | "validate" | "centerAffix" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "clearable" | "clearIcon" | "active" | "dirty" | "persistentClear" | "singleLine" | "autocomplete" | "autofocus" | "prefix" | "persistentPlaceholder" | "persistentCounter" | "defaultValue" | "dirName" | "labels" | "maxLength" | "minLength" | "readOnly" | "selectionDirection" | "selectionEnd" | "selectionStart" | "validationMessage" | "validity" | "willValidate" | "checkValidity" | "reportValidity" | "setCustomValidity" | "setRangeText" | "setSelectionRange" | "addEventListener" | "removeEventListener" | "accessKey" | "accessKeyLabel" | "autocapitalize" | "dir" | "inert" | "innerText" | "offsetHeight" | "offsetLeft" | "offsetParent" | "offsetTop" | "offsetWidth" | "outerText" | "popover" | "spellcheck" | "translate" | "writingSuggestions" | "attachInternals" | "hidePopover" | "showPopover" | "togglePopover" | "attributes" | "classList" | "className" | "clientHeight" | "clientLeft" | "clientTop" | "clientWidth" | "currentCSSZoom" | "localName" | "namespaceURI" | "onfullscreenchange" | "onfullscreenerror" | "outerHTML" | "ownerDocument" | "part" | "scrollHeight" | "scrollLeft" | "scrollTop" | "scrollWidth" | "shadowRoot" | "tagName" | "attachShadow" | "checkVisibility" | "closest" | "computedStyleMap" | "getAttribute" | "getAttributeNS" | "getAttributeNames" | "getAttributeNode" | "getAttributeNodeNS" | "getBoundingClientRect" | "getClientRects" | "getElementsByClassName" | "getElementsByTagName" | "getElementsByTagNameNS" | "getHTML" | "hasAttribute" | "hasAttributeNS" | "hasAttributes" | "hasPointerCapture" | "insertAdjacentElement" | "insertAdjacentHTML" | "insertAdjacentText" | "matches" | "releasePointerCapture" | "removeAttribute" | "removeAttributeNS" | "removeAttributeNode" | "requestFullscreen" | "requestPointerLock" | "scroll" | "scrollBy" | "scrollIntoView" | "scrollTo" | "setAttribute" | "setAttributeNS" | "setAttributeNode" | "setAttributeNodeNS" | "setHTMLUnsafe" | "setPointerCapture" | "toggleAttribute" | "webkitMatchesSelector" | "textContent" | "baseURI" | "childNodes" | "firstChild" | "isConnected" | "lastChild" | "nextSibling" | "nodeName" | "nodeType" | "nodeValue" | "parentElement" | "parentNode" | "previousSibling" | "appendChild" | "cloneNode" | "compareDocumentPosition" | "contains" | "getRootNode" | "hasChildNodes" | "insertBefore" | "isDefaultNamespace" | "isEqualNode" | "isSameNode" | "lookupNamespaceURI" | "lookupPrefix" | "removeChild" | "replaceChild" | "ELEMENT_NODE" | "ATTRIBUTE_NODE" | "TEXT_NODE" | "CDATA_SECTION_NODE" | "ENTITY_REFERENCE_NODE" | "ENTITY_NODE" | "PROCESSING_INSTRUCTION_NODE" | "COMMENT_NODE" | "DOCUMENT_NODE" | "DOCUMENT_TYPE_NODE" | "DOCUMENT_FRAGMENT_NODE" | "NOTATION_NODE" | "DOCUMENT_POSITION_DISCONNECTED" | "DOCUMENT_POSITION_PRECEDING" | "DOCUMENT_POSITION_FOLLOWING" | "DOCUMENT_POSITION_CONTAINS" | "DOCUMENT_POSITION_CONTAINED_BY" | "DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC" | "dispatchEvent" | "ariaAtomic" | "ariaAutoComplete" | "ariaBrailleLabel" | "ariaBrailleRoleDescription" | "ariaBusy" | "ariaChecked" | "ariaColCount" | "ariaColIndex" | "ariaColIndexText" | "ariaColSpan" | "ariaCurrent" | "ariaDescription" | "ariaDisabled" | "ariaExpanded" | "ariaHasPopup" | "ariaHidden" | "ariaInvalid" | "ariaKeyShortcuts" | "ariaLabel" | "ariaLevel" | "ariaLive" | "ariaModal" | "ariaMultiLine" | "ariaMultiSelectable" | "ariaOrientation" | "ariaPlaceholder" | "ariaPosInSet" | "ariaPressed" | "ariaReadOnly" | "ariaRelevant" | "ariaRequired" | "ariaRoleDescription" | "ariaRowCount" | "ariaRowIndex" | "ariaRowIndexText" | "ariaRowSpan" | "ariaSelected" | "ariaSetSize" | "ariaSort" | "ariaValueMax" | "ariaValueMin" | "ariaValueNow" | "ariaValueText" | "getAnimations" | "after" | "before" | "remove" | "replaceWith" | "nextElementSibling" | "previousElementSibling" | "childElementCount" | "firstElementChild" | "lastElementChild" | "querySelector" | "querySelectorAll" | "replaceChildren" | "assignedSlot" | "attributeStyleMap" | "contentEditable" | "enterKeyHint" | "isContentEditable" | "onabort" | "onanimationcancel" | "onanimationend" | "onanimationiteration" | "onanimationstart" | "onauxclick" | "onbeforeinput" | "onbeforetoggle" | "onblur" | "oncancel" | "oncanplay" | "oncanplaythrough" | "onchange" | "onclick" | "onclose" | "oncontextlost" | "oncontextmenu" | "oncontextrestored" | "oncopy" | "oncuechange" | "oncut" | "ondblclick" | "ondrag" | "ondragend" | "ondragenter" | "ondragleave" | "ondragover" | "ondragstart" | "ondrop" | "ondurationchange" | "onemptied" | "onended" | "onerror" | "onfocus" | "onformdata" | "ongotpointercapture" | "oninput" | "oninvalid" | "onkeydown" | "onkeypress" | "onkeyup" | "onload" | "onloadeddata" | "onloadedmetadata" | "onloadstart" | "onlostpointercapture" | "onmousedown" | "onmouseenter" | "onmouseleave" | "onmousemove" | "onmouseout" | "onmouseover" | "onmouseup" | "onpaste" | "onpause" | "onplay" | "onplaying" | "onpointercancel" | "onpointerdown" | "onpointerenter" | "onpointerleave" | "onpointermove" | "onpointerout" | "onpointerover" | "onpointerup" | "onprogress" | "onratechange" | "onreset" | "onresize" | "onscroll" | "onscrollend" | "onsecuritypolicyviolation" | "onseeked" | "onseeking" | "onselect" | "onselectionchange" | "onselectstart" | "onslotchange" | "onstalled" | "onsubmit" | "onsuspend" | "ontimeupdate" | "ontoggle" | "ontouchcancel" | "ontouchend" | "ontouchmove" | "ontouchstart" | "ontransitioncancel" | "ontransitionend" | "ontransitionrun" | "ontransitionstart" | "onvolumechange" | "onwaiting" | "onwebkitanimationend" | "onwebkitanimationiteration" | "onwebkitanimationstart" | "onwebkittransitionend" | "onwheel" | "dataset" | "nonce" | "tabIndex" | "_allExposed" | "_" | "_clickOutside" | "_mutate" | "_observe" | "_onResize" | "_onScroll" | "_ripple" | "_touchHandlers" | "_transitionInitialStyles" | "accept" | "align" | "alt" | "capture" | "checked" | "controlRef" | "defaultChecked" | "fieldIconColor" | "files" | "formAction" | "formEnctype" | "formMethod" | "formNoValidate" | "formTarget" | "indeterminate" | "list" | "multiple" | "popoverTargetAction" | "popoverTargetElement" | "showPicker" | "src" | "stepDown" | "stepUp" | "useMap" | "valueAsDate" | "valueAsNumber" | "webkitEntries" | "webkitdirectory"> & import("vue").ShallowUnwrapRef | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + }, "disabled" | "style" | "density" | "error" | "direction" | "reset" | "isValid" | "resetValidation" | "validate" | "centerAffix" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules"> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & import("vue").ComponentCustomProperties & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "name" | "color" | "disabled" | keyof import("vue").VNodeProps | "class" | "style" | "label" | "density" | "error" | "id" | "width" | "direction" | "theme" | "appendIcon" | "baseColor" | "prependIcon" | "modelValue" | "$children" | "v-slots" | "v-slot:append" | "v-slot:default" | "v-slot:prepend" | "onUpdate:modelValue" | "centerAffix" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "onUpdate:focused" | "validateOn" | "validationValue" | "maxWidth" | "minWidth" | "iconColor" | "hideDetails" | "hint" | "onClick:prepend" | "onClick:append" | "v-slot:details" | "v-slot:message">, `$${any}`> & Omit & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + details: boolean; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: ((arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: "update:focused", focused: boolean) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }, {}, string, import("vue").SlotsType; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: (arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, "flat" | "variant" | "disabled" | "reverse" | "style" | "details" | "error" | "rounded" | "tile" | "centerAffix" | "focused" | "glow" | "clearable" | "clearIcon" | "active" | "dirty" | "persistentClear" | "singleLine" | "controlRef" | "fieldIconColor"> & import("vue").ShallowUnwrapRef<{ + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }> & import("vue").ComponentCustomProperties & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VField/VField.mjs").VFieldSlots>, "flat" | "color" | "variant" | "disabled" | "loading" | "reverse" | keyof import("vue").VNodeProps | "class" | "style" | "details" | "label" | "error" | "id" | "theme" | "rounded" | "tile" | "baseColor" | "modelValue" | "$children" | "v-slots" | "v-slot:default" | "v-slot:label" | "onUpdate:modelValue" | "centerAffix" | "focused" | "glow" | "onUpdate:focused" | "iconColor" | "appendInnerIcon" | "bgColor" | "clearable" | "clearIcon" | "active" | "dirty" | "persistentClear" | "prependInnerIcon" | "singleLine" | "onClick:clear" | "onClick:appendInner" | "onClick:prependInner" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:loader" | "v-slot:prepend-inner">, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + } | {}; + }> & import("vue").ComponentCustomProperties, "flat" | "name" | "color" | "type" | "variant" | "disabled" | "loading" | "reverse" | keyof import("vue").VNodeProps | "class" | "style" | "placeholder" | "label" | "density" | "error" | "id" | "width" | "role" | "direction" | "theme" | "rounded" | "tile" | "appendIcon" | "baseColor" | "prependIcon" | "modelValue" | "$children" | "v-slots" | "v-slot:append" | "v-slot:default" | "v-slot:label" | "v-slot:prepend" | "onUpdate:modelValue" | "centerAffix" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "onUpdate:focused" | "validateOn" | "validationValue" | "maxWidth" | "minWidth" | "iconColor" | "hideDetails" | "hint" | "onClick:prepend" | "onClick:append" | "v-slot:details" | "v-slot:message" | "appendInnerIcon" | "bgColor" | "clearable" | "clearIcon" | "active" | "dirty" | "persistentClear" | "prependInnerIcon" | "singleLine" | "onClick:clear" | "onClick:appendInner" | "onClick:prependInner" | "autocomplete" | "autofocus" | "counter" | "counterValue" | "prefix" | "persistentPlaceholder" | "persistentCounter" | "suffix" | "modelModifiers" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:counter" | "v-slot:loader" | "v-slot:prepend-inner" | "onClick:control" | "onMousedown:control">, `$${any}`> & { + _allExposed: { + isFocused: import("vue").ShallowRef; + menu: import("vue").WritableComputedRef; + select: (item: import("vuetify/lib/composables/list-items.mjs").ListItem, set?: boolean | null) => void; + } | (HTMLInputElement & Omit | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + name?: string | undefined; + label?: string | undefined; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + density: import("vuetify/lib/composables/density.mjs").Density; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + centerAffix: boolean; + color?: string | undefined; + glow: boolean; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hideSpinButtons: boolean; + hint?: string | undefined; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + default?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + prepend?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + append?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + details?: ((arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]) | undefined; + message?: ((arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: string, ...args: any[]) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + prepend: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + disabled: boolean | null; + error: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + centerAffix: boolean; + glow: boolean; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + name?: string | undefined; + label?: string | undefined; + validateOn?: ("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined; + validationValue?: any; + maxWidth?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + id?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + color?: string | undefined; + iconColor?: string | boolean | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + hideDetails?: "auto" | boolean | undefined; + hint?: string | undefined; + "onClick:prepend"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:append"?: ((args_0: MouseEvent) => void) | undefined; + } & {}, "isValid" | "reset" | "resetValidation" | "validate" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style")> & import("vue").ShallowUnwrapRef<{ + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VInput/VInput.mjs").VInputSlots>, "$children" | "appendIcon" | "baseColor" | "class" | "color" | "hideDetails" | "hint" | "iconColor" | "id" | "label" | "maxWidth" | "minWidth" | "modelValue" | "name" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "onUpdate:modelValue" | "prependIcon" | "theme" | "v-slot:append" | "v-slot:default" | "v-slot:details" | "v-slot:message" | "v-slot:prepend" | "v-slots" | "validateOn" | "validationValue" | "width" | ("centerAffix" | "density" | "direction" | "disabled" | "error" | "errorMessages" | "focused" | "glow" | "hideSpinButtons" | "maxErrors" | "messages" | "persistentHint" | "readonly" | "rules" | "style") | keyof import("vue").VNodeProps>, `$${any}`> & Omit & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + "onUpdate:focused"?: (((args_0: boolean) => void) & ((focused: boolean) => any)) | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + iconColor?: string | boolean | undefined; + label?: string | undefined; + persistentClear: boolean; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + details: boolean; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant">; + $attrs: { + [x: string]: unknown; + }; + $refs: { + [x: string]: unknown; + }; + $slots: Readonly<{ + clear?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]) | undefined; + "prepend-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + "append-inner"?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]) | undefined; + label?: ((arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]) | undefined; + loader?: ((arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]) | undefined; + default?: ((arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]) | undefined; + }>; + $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null; + $host: Element | null; + $emit: (event: "update:focused", focused: boolean) => void; + $el: any; + $options: import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + }, "$children" | "modelValue" | "update:modelValue" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots">, string, { + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }, {}, string, import("vue").SlotsType; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + default: (arg: import("vuetify/lib/components/VField/VField.mjs").VFieldSlot) => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & { + beforeCreate?: ((() => void)[] | (() => void)) | undefined; + created?: ((() => void)[] | (() => void)) | undefined; + beforeMount?: ((() => void)[] | (() => void)) | undefined; + mounted?: ((() => void)[] | (() => void)) | undefined; + beforeUpdate?: ((() => void)[] | (() => void)) | undefined; + updated?: ((() => void)[] | (() => void)) | undefined; + activated?: ((() => void)[] | (() => void)) | undefined; + deactivated?: ((() => void)[] | (() => void)) | undefined; + beforeDestroy?: ((() => void)[] | (() => void)) | undefined; + beforeUnmount?: ((() => void)[] | (() => void)) | undefined; + destroyed?: ((() => void)[] | (() => void)) | undefined; + unmounted?: ((() => void)[] | (() => void)) | undefined; + renderTracked?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + renderTriggered?: (((e: import("vue").DebuggerEvent) => void)[] | ((e: import("vue").DebuggerEvent) => void)) | undefined; + errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)[] | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}, {}, "", {}, any> | null, info: string) => void | boolean)) | undefined; + }; + $forceUpdate: () => void; + $nextTick: typeof import("vue").nextTick; + $watch any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R, args_2: import("@vue/reactivity").OnCleanup) => any : (args_0: any, args_1: any, args_2: import("@vue/reactivity").OnCleanup) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; + } & Readonly<{ + style: import("vue").StyleValue; + focused: boolean; + rounded: string | number | boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + }> & Omit<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + focused: boolean; + tile: boolean; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + dirty: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + details: boolean; + } & { + theme?: string | undefined; + class?: any; + "onUpdate:focused"?: ((args_0: boolean) => void) | undefined; + rounded?: string | number | boolean | undefined; + loading?: string | boolean | undefined; + appendInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + bgColor?: string | undefined; + centerAffix?: boolean | undefined; + color?: string | undefined; + baseColor?: string | undefined; + iconColor?: string | boolean | undefined; + label?: string | undefined; + prependInnerIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + "onClick:clear"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:appendInner"?: ((args_0: MouseEvent) => void) | undefined; + "onClick:prependInner"?: ((args_0: MouseEvent) => void) | undefined; + id?: string | undefined; + } & { + "onUpdate:focused"?: ((focused: boolean) => any) | undefined; + }, "controlRef" | "fieldIconColor" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant")> & import("vue").ShallowUnwrapRef<{ + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + }> & {} & import("vue").ComponentCustomProperties & {} & import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + modelValue?: unknown; + "onUpdate:modelValue"?: ((value: unknown) => void) | undefined; + }, import("vuetify/lib/components/VField/VField.mjs").VFieldSlots>, "$children" | "appendInnerIcon" | "baseColor" | "bgColor" | "class" | "color" | "iconColor" | "id" | "label" | "loading" | "modelValue" | "onClick:appendInner" | "onClick:clear" | "onClick:prependInner" | "onUpdate:focused" | "onUpdate:modelValue" | "prependInnerIcon" | "theme" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:default" | "v-slot:label" | "v-slot:loader" | "v-slot:prepend-inner" | "v-slots" | ("active" | "centerAffix" | "clearIcon" | "clearable" | "details" | "dirty" | "disabled" | "error" | "flat" | "focused" | "glow" | "persistentClear" | "reverse" | "rounded" | "singleLine" | "style" | "tile" | "variant") | keyof import("vue").VNodeProps>, `$${any}`> & { + _allExposed: { + reset: () => Promise; + resetValidation: () => Promise; + validate: (silent?: boolean) => Promise; + isValid: import("vue").ComputedRef; + errorMessages: import("vue").ComputedRef; + } | { + controlRef: import("vue").Ref; + fieldIconColor: import("vue").ComputedRef; + } | {}; + }); + }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Omit<{ + "update:focused": (focused: boolean) => true; + "update:modelValue": (value: any) => true; + "update:menu": (ue: boolean) => true; + }, "modelValue" | "$children" | "v-slots" | "v-slot:append" | "v-slot:label" | "v-slot:prepend" | "update:modelValue" | "v-slot:details" | "v-slot:message" | "v-slot:append-inner" | "v-slot:clear" | "v-slot:loader" | "v-slot:prepend-inner" | "multiple" | "itemProps" | "itemTitle" | "itemValue" | "items" | "returnObject" | "v-slot:append-item" | "v-slot:chip" | "v-slot:divider" | "v-slot:item" | "v-slot:no-data" | "v-slot:prepend-item" | "v-slot:selection" | "v-slot:subheader">, string, { + style: import("vue").StyleValue; + focused: boolean; + errorMessages: string | readonly string[] | null; + maxErrors: string | number; + readonly: boolean | null; + rules: readonly (string | boolean | PromiseLike | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + transition: string | boolean | { + component: Component; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + hideSpinButtons: boolean; + persistentHint: boolean; + messages: string | readonly string[]; + direction: "horizontal" | "vertical"; + itemChildren: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemType: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + clearable: boolean; + clearIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + active: boolean; + centerAffix: boolean; + disabled: boolean; + glow: boolean; + error: boolean; + flat: boolean; + persistentClear: boolean; + reverse: boolean; + singleLine: boolean; + variant: "filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined"; + autofocus: boolean; + persistentPlaceholder: boolean; + persistentCounter: boolean; + role: string; + type: string; + closeText: string; + openText: string; + chips: boolean; + closableChips: boolean; + eager: boolean; + hideNoData: boolean; + hideSelected: boolean; + menu: boolean; + menuIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + noDataText: string; + openOnClear: boolean; + noAutoScroll: boolean; + }, {}, string, import("vue").SlotsType import("vue").VNode[]; + append: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + details: (arg: import("vuetify/lib/components/VInput/VInput.mjs").VInputSlot) => import("vue").VNode[]; + message: (arg: import("vuetify/lib/components/VMessages/VMessages.mjs").VMessageSlot) => import("vue").VNode[]; + clear: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + props: Record; + }) => import("vue").VNode[]; + "prepend-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + "append-inner": (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot) => import("vue").VNode[]; + label: (arg: import("vuetify/lib/components/VField/VField.mjs").DefaultInputSlot & { + label: string | undefined; + props: Record; + }) => import("vue").VNode[]; + loader: (arg: import("vuetify/lib/composables/loader.mjs").LoaderSlotProps) => import("vue").VNode[]; + item: (arg: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + props: Record; + }) => import("vue").VNode[]; + chip: (arg: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + props: Record; + }) => import("vue").VNode[]; + selection: (arg: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + }) => import("vue").VNode[]; + subheader: (arg: { + props: Record; + index: number; + }) => import("vue").VNode[]; + divider: (arg: { + props: Record; + index: number; + }) => import("vue").VNode[]; + "prepend-item": () => import("vue").VNode[]; + "append-item": () => import("vue").VNode[]; + "no-data": () => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new , ReturnObject extends boolean = false, Multiple extends boolean = false, V extends import("vuetify/lib/components/VSelect/VSelect.mjs").Value = import("vuetify/lib/components/VSelect/VSelect.mjs").Value>(props: { + items?: T | undefined; + itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey>; + itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey>; + itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey>; + returnObject?: ReturnObject | undefined; + multiple?: Multiple | undefined; + modelValue?: V | null | undefined; + "onUpdate:modelValue"?: ((value: V) => void) | undefined; + }, slots: Omit & { + item: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + props: Record; + }; + chip: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + props: Record; + }; + selection: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + }; + subheader: { + props: Record; + index: number; + }; + divider: { + props: Record; + index: number; + }; + "prepend-item": never; + "append-item": never; + "no-data": never; + }) => import("vuetify/lib/util/defineComponent.mjs").GenericProps<{ + items?: T | undefined; + itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey>; + itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey>; + itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey>; + returnObject?: ReturnObject | undefined; + multiple?: Multiple | undefined; + modelValue?: V | null | undefined; + "onUpdate:modelValue"?: ((value: V) => void) | undefined; + }, Omit & { + item: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + props: Record; + }; + chip: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + props: Record; + }; + selection: { + item: import("vuetify/lib/composables/list-items.mjs").ListItem; + index: number; + }; + subheader: { + props: Record; + index: number; + }; + divider: { + props: Record; + index: number; + }; + "prepend-item": never; + "append-item": never; + "no-data": never; + }>) & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + theme: StringConstructor; + class: import("vue").PropType; + style: { + type: import("vue").PropType; + default: null; + }; + focused: BooleanConstructor; + "onUpdate:focused": import("vue").PropType<(args_0: boolean) => void>; + errorMessages: { + type: import("vue").PropType; + default: () => never[]; + }; + maxErrors: { + type: (NumberConstructor | StringConstructor)[]; + default: number; + }; + name: StringConstructor; + readonly: { + type: import("vue").PropType; + default: null; + }; + rules: { + type: import("vue").PropType | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]>; + default: () => never[]; + }; + modelValue: { + type: import("vue").PropType; + default: any; + }; + validateOn: import("vue").PropType<("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined>; + density: { + type: import("vue").PropType; + default: string; + validator: (v: any) => boolean; + }; + rounded: { + type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + default: undefined; + }; + tile: BooleanConstructor; + maxWidth: (NumberConstructor | StringConstructor)[]; + minWidth: (NumberConstructor | StringConstructor)[]; + width: (NumberConstructor | StringConstructor)[]; + loading: (BooleanConstructor | StringConstructor)[]; + transition: { + type: import("vue").PropType; + default: { + component: Component; + } | NonNullable; + }; + id: StringConstructor; + appendIcon: import("vue").PropType; + prependIcon: import("vue").PropType; + hideDetails: import("vue").PropType<"auto" | boolean>; + hideSpinButtons: BooleanConstructor; + hint: StringConstructor; + persistentHint: BooleanConstructor; + messages: { + type: import("vue").PropType; + default: () => never[]; + }; + direction: { + type: import("vue").PropType<"horizontal" | "vertical">; + default: string; + validator: (v: any) => boolean; + }; + "onClick:prepend": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:append": import("vue").PropType<(args_0: MouseEvent) => void>; + items: { + type: import("vue").PropType; + default: () => never[]; + }; + itemTitle: { + type: import("vue").PropType; + default: string; + }; + itemValue: { + type: import("vue").PropType; + default: string; + }; + itemChildren: Omit<{ + type: import("vue").PropType; + default: string; + }, "default" | "type"> & { + type: import("vue").PropType; + default: NonNullable; + }; + itemProps: { + type: import("vue").PropType; + default: string; + }; + itemType: { + type: import("vue").PropType; + default: string; + }; + returnObject: BooleanConstructor; + valueComparator: import("vue").PropType; + bgColor: StringConstructor; + clearable: BooleanConstructor; + clearIcon: { + type: import("vue").PropType; + default: string; + }; + active: BooleanConstructor; + centerAffix: { + type: BooleanConstructor; + default: undefined; + }; + color: StringConstructor; + baseColor: StringConstructor; + disabled: { + type: BooleanConstructor; + default: null; + }; + glow: BooleanConstructor; + error: BooleanConstructor; + flat: BooleanConstructor; + iconColor: (BooleanConstructor | StringConstructor)[]; + label: StringConstructor; + persistentClear: BooleanConstructor; + prependInnerIcon: import("vue").PropType; + reverse: BooleanConstructor; + singleLine: BooleanConstructor; + variant: { + type: import("vue").PropType<"filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined">; + default: string; + validator: (v: any) => boolean; + }; + "onClick:clear": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:appendInner": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:prependInner": import("vue").PropType<(args_0: MouseEvent) => void>; + autocomplete: import("vue").PropType; + autofocus: BooleanConstructor; + counter: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + counterValue: import("vue").PropType number)>; + prefix: StringConstructor; + placeholder: StringConstructor; + persistentPlaceholder: BooleanConstructor; + persistentCounter: BooleanConstructor; + suffix: StringConstructor; + role: { + type: import("vue").PropType; + default: string; + }; + type: { + type: StringConstructor; + default: string; + }; + modelModifiers: import("vue").PropType>; + closeText: { + type: StringConstructor; + default: string; + }; + openText: { + type: StringConstructor; + default: string; + }; + chips: BooleanConstructor; + closableChips: BooleanConstructor; + eager: BooleanConstructor; + hideNoData: BooleanConstructor; + hideSelected: BooleanConstructor; + listProps: { + type: import("vue").PropType & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + border?: string | number | boolean | undefined; + density: import("vuetify/lib/composables/density.mjs").Density; + elevation?: string | number | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + color?: string | undefined; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + height?: string | number | undefined; + maxHeight?: string | number | undefined; + maxWidth?: string | number | undefined; + minHeight?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + itemType: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + returnObject: boolean; + valueComparator?: typeof import("vuetify/lib/util/deepEqual.mjs").deepEqual | undefined; + activatable: boolean; + selectable: boolean; + activeStrategy?: import("vuetify/lib/composables/nested/nested.mjs").ActiveStrategyProp | undefined; + selectStrategy: import("vuetify/lib/composables/nested/nested.mjs").SelectStrategyProp; + openStrategy: import("vuetify/lib/composables/nested/nested.mjs").OpenStrategyProp; + activated?: any; + mandatory: boolean; + itemsRegistration: import("vuetify/lib/composables/nested/nested.mjs").ItemsRegistrationType; + baseColor?: string | undefined; + activeColor?: string | undefined; + activeClass?: string | undefined; + bgColor?: string | undefined; + disabled: boolean; + filterable: boolean; + expandIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + collapseIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + lines: "one" | "three" | "two" | false; + slim: boolean; + prependGap?: string | number | undefined; + indent?: string | number | undefined; + nav: boolean; + "onClick:activate"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => any) | undefined; + "onUpdate:activated"?: ((value: unknown) => any) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatable" | "density" | "disabled" | "filterable" | "itemType" | "itemsRegistration" | "lines" | "mandatory" | "nav" | "openStrategy" | "returnObject" | "rounded" | "selectStrategy" | "selectable" | "slim" | "style" | "tag" | "tile" | "variant"> & { + items?: readonly any[] | undefined; + itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemChildren?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + selected?: unknown; + "onUpdate:selected"?: ((value: unknown) => void) | undefined; + "onClick:open"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => void) | undefined; + "onClick:select"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => void) | undefined; + opened?: unknown; + "onUpdate:opened"?: ((value: unknown) => void) | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + title?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + subtitle?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + item?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + divider?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + subheader?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + header?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + title?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + subtitle?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + item?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + divider?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + subheader?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + header?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:divider"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:header"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:item"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:subheader"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:subtitle"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:title"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + }>; + }; + menu: BooleanConstructor; + menuIcon: { + type: import("vue").PropType; + default: string; + }; + menuProps: { + type: import("vue").PropType; + openOnClick: boolean; + openOnHover: boolean; + openOnFocus: boolean; + closeOnContentClick: boolean; + retainFocus: boolean; + captureFocus: boolean; + disableInitialFocus: boolean; + eager: boolean; + transition: string | boolean | { + component: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {}, true, {}, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, {} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, {}, {}, {}, {}>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, {}, {}, string, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + target: import("vue").PropType; + }, import("vue").ExtractPropTypes<{ + target: import("vue").PropType; + }>>; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + closeOnBack: boolean; + contained: boolean; + disabled: boolean; + noClickAnimation: boolean; + modelValue: boolean; + persistent: boolean; + scrim: string | boolean; + zIndex: string | number; + submenu: boolean; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + $children?: { + default?: ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + activator?: ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + activator?: false | ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + } | undefined; + locationStrategy: "connected" | "static" | import("vuetify/lib/types.mjs").LocationStrategyFunction; + location: import("vuetify/lib/types.mjs").Anchor; + origin: "auto" | "overlap" | import("vuetify/lib/types.mjs").Anchor; + offset?: string | number | number[] | undefined; + stickToTarget: boolean; + viewportMargin: string | number; + scrollStrategy: "block" | "close" | "none" | "reposition" | import("vuetify/lib/types.mjs").ScrollStrategyFunction; + height?: string | number | undefined; + maxHeight?: string | number | undefined; + maxWidth?: string | number | undefined; + minHeight?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + closeDelay: string | number; + openDelay: string | number; + target?: "cursor" | "parent" | Element | [x: number, y: number] | import("vue").ComponentPublicInstance | (string & {}) | undefined; + activator?: "parent" | Element | import("vue").ComponentPublicInstance | (string & {}) | undefined; + activatorProps: Record; + openOnClick?: boolean | undefined; + openOnHover: boolean; + openOnFocus?: boolean | undefined; + closeOnContentClick: boolean; + retainFocus: boolean; + captureFocus: boolean; + disableInitialFocus: boolean; + eager: boolean; + transition: string | boolean | { + component: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {}, true, {}, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, {} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, {}, {}, {}, {}>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, {}, {}, string, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + target: import("vue").PropType; + }, import("vue").ExtractPropTypes<{ + target: import("vue").PropType; + }>>; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + attach?: string | boolean | Element | undefined; + closeOnBack: boolean; + contained: boolean; + contentClass?: any; + contentProps?: any; + disabled: boolean; + opacity?: string | number | undefined; + noClickAnimation: boolean; + modelValue: boolean; + persistent: boolean; + scrim: string | boolean; + zIndex: string | number; + id?: string | undefined; + submenu: boolean; + "onUpdate:modelValue"?: ((value: boolean) => any) | undefined; + "v-slot:activator"?: false | ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">>; + }; + multiple: BooleanConstructor; + noDataText: { + type: StringConstructor; + default: string; + }; + openOnClear: BooleanConstructor; + itemColor: StringConstructor; + noAutoScroll: BooleanConstructor; + }, import("vue").ExtractPropTypes<{ + theme: StringConstructor; + class: import("vue").PropType; + style: { + type: import("vue").PropType; + default: null; + }; + focused: BooleanConstructor; + "onUpdate:focused": import("vue").PropType<(args_0: boolean) => void>; + errorMessages: { + type: import("vue").PropType; + default: () => never[]; + }; + maxErrors: { + type: (NumberConstructor | StringConstructor)[]; + default: number; + }; + name: StringConstructor; + readonly: { + type: import("vue").PropType; + default: null; + }; + rules: { + type: import("vue").PropType | ((value: any) => import("vuetify/lib/composables/validation.mjs").ValidationResult) | ((value: any) => PromiseLike) | [string, any, (string | undefined)?])[]>; + default: () => never[]; + }; + modelValue: { + type: import("vue").PropType; + default: any; + }; + validateOn: import("vue").PropType<("blur eager" | "blur lazy" | "eager" | "eager blur" | "eager input" | "eager invalid-input" | "eager submit" | "input eager" | "input lazy" | "invalid-input eager" | "invalid-input lazy" | "lazy" | "lazy blur" | "lazy input" | "lazy invalid-input" | "lazy submit" | "submit eager" | "submit lazy" | ("blur" | "input" | "invalid-input" | "submit")) | undefined>; + density: { + type: import("vue").PropType; + default: string; + validator: (v: any) => boolean; + }; + rounded: { + type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + default: undefined; + }; + tile: BooleanConstructor; + maxWidth: (NumberConstructor | StringConstructor)[]; + minWidth: (NumberConstructor | StringConstructor)[]; + width: (NumberConstructor | StringConstructor)[]; + loading: (BooleanConstructor | StringConstructor)[]; + transition: { + type: import("vue").PropType; + default: { + component: Component; + } | NonNullable; + }; + id: StringConstructor; + appendIcon: import("vue").PropType; + prependIcon: import("vue").PropType; + hideDetails: import("vue").PropType<"auto" | boolean>; + hideSpinButtons: BooleanConstructor; + hint: StringConstructor; + persistentHint: BooleanConstructor; + messages: { + type: import("vue").PropType; + default: () => never[]; + }; + direction: { + type: import("vue").PropType<"horizontal" | "vertical">; + default: string; + validator: (v: any) => boolean; + }; + "onClick:prepend": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:append": import("vue").PropType<(args_0: MouseEvent) => void>; + items: { + type: import("vue").PropType; + default: () => never[]; + }; + itemTitle: { + type: import("vue").PropType; + default: string; + }; + itemValue: { + type: import("vue").PropType; + default: string; + }; + itemChildren: Omit<{ + type: import("vue").PropType; + default: string; + }, "default" | "type"> & { + type: import("vue").PropType; + default: NonNullable; + }; + itemProps: { + type: import("vue").PropType; + default: string; + }; + itemType: { + type: import("vue").PropType; + default: string; + }; + returnObject: BooleanConstructor; + valueComparator: import("vue").PropType; + bgColor: StringConstructor; + clearable: BooleanConstructor; + clearIcon: { + type: import("vue").PropType; + default: string; + }; + active: BooleanConstructor; + centerAffix: { + type: BooleanConstructor; + default: undefined; + }; + color: StringConstructor; + baseColor: StringConstructor; + disabled: { + type: BooleanConstructor; + default: null; + }; + glow: BooleanConstructor; + error: BooleanConstructor; + flat: BooleanConstructor; + iconColor: (BooleanConstructor | StringConstructor)[]; + label: StringConstructor; + persistentClear: BooleanConstructor; + prependInnerIcon: import("vue").PropType; + reverse: BooleanConstructor; + singleLine: BooleanConstructor; + variant: { + type: import("vue").PropType<"filled" | "outlined" | "plain" | "solo" | "solo-filled" | "solo-inverted" | "underlined">; + default: string; + validator: (v: any) => boolean; + }; + "onClick:clear": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:appendInner": import("vue").PropType<(args_0: MouseEvent) => void>; + "onClick:prependInner": import("vue").PropType<(args_0: MouseEvent) => void>; + autocomplete: import("vue").PropType; + autofocus: BooleanConstructor; + counter: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + counterValue: import("vue").PropType number)>; + prefix: StringConstructor; + placeholder: StringConstructor; + persistentPlaceholder: BooleanConstructor; + persistentCounter: BooleanConstructor; + suffix: StringConstructor; + role: { + type: import("vue").PropType; + default: string; + }; + type: { + type: StringConstructor; + default: string; + }; + modelModifiers: import("vue").PropType>; + closeText: { + type: StringConstructor; + default: string; + }; + openText: { + type: StringConstructor; + default: string; + }; + chips: BooleanConstructor; + closableChips: BooleanConstructor; + eager: BooleanConstructor; + hideNoData: BooleanConstructor; + hideSelected: BooleanConstructor; + listProps: { + type: import("vue").PropType & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + border?: string | number | boolean | undefined; + density: import("vuetify/lib/composables/density.mjs").Density; + elevation?: string | number | undefined; + rounded?: string | number | boolean | undefined; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + color?: string | undefined; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + height?: string | number | undefined; + maxHeight?: string | number | undefined; + maxWidth?: string | number | undefined; + minHeight?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + itemType: string | boolean | readonly (string | number)[] | ((item: Record, fallback?: any) => any) | null; + returnObject: boolean; + valueComparator?: typeof import("vuetify/lib/util/deepEqual.mjs").deepEqual | undefined; + activatable: boolean; + selectable: boolean; + activeStrategy?: import("vuetify/lib/composables/nested/nested.mjs").ActiveStrategyProp | undefined; + selectStrategy: import("vuetify/lib/composables/nested/nested.mjs").SelectStrategyProp; + openStrategy: import("vuetify/lib/composables/nested/nested.mjs").OpenStrategyProp; + activated?: any; + mandatory: boolean; + itemsRegistration: import("vuetify/lib/composables/nested/nested.mjs").ItemsRegistrationType; + baseColor?: string | undefined; + activeColor?: string | undefined; + activeClass?: string | undefined; + bgColor?: string | undefined; + disabled: boolean; + filterable: boolean; + expandIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + collapseIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + lines: "one" | "three" | "two" | false; + slim: boolean; + prependGap?: string | number | undefined; + indent?: string | number | undefined; + nav: boolean; + "onClick:activate"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => any) | undefined; + "onUpdate:activated"?: ((value: unknown) => any) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatable" | "density" | "disabled" | "filterable" | "itemType" | "itemsRegistration" | "lines" | "mandatory" | "nav" | "openStrategy" | "returnObject" | "rounded" | "selectStrategy" | "selectable" | "slim" | "style" | "tag" | "tile" | "variant"> & { + items?: readonly any[] | undefined; + itemTitle?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemValue?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemChildren?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + itemProps?: import("vuetify/lib/util/helpers.mjs").SelectItemKey; + selected?: unknown; + "onUpdate:selected"?: ((value: unknown) => void) | undefined; + "onClick:open"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => void) | undefined; + "onClick:select"?: ((value: { + id: unknown; + value: boolean; + path: unknown[]; + }) => void) | undefined; + opened?: unknown; + "onUpdate:opened"?: ((value: unknown) => void) | undefined; + } & { + $children?: { + prepend?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + append?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + title?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + subtitle?: ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + default?: (() => import("vue").VNodeChild) | undefined; + item?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + divider?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + subheader?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + header?: ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + prepend?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + append?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + title?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + subtitle?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + default?: false | (() => import("vue").VNodeChild) | undefined; + item?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + divider?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + subheader?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + header?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:divider"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:header"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:item"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:subheader"?: false | ((arg: { + props: { + [key: string]: any; + title: string; + value: any; + }; + }) => import("vue").VNodeChild) | undefined; + "v-slot:subtitle"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemSubtitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + "v-slot:title"?: false | ((arg: import("vuetify/lib/components/VList/VListItem.mjs").ListItemTitleSlot & { + item: any; + }) => import("vue").VNodeChild) | undefined; + }>; + }; + menu: BooleanConstructor; + menuIcon: { + type: import("vue").PropType; + default: string; + }; + menuProps: { + type: import("vue").PropType; + openOnClick: boolean; + openOnHover: boolean; + openOnFocus: boolean; + closeOnContentClick: boolean; + retainFocus: boolean; + captureFocus: boolean; + disableInitialFocus: boolean; + eager: boolean; + transition: string | boolean | { + component: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {}, true, {}, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, {} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, {}, {}, {}, {}>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, {}, {}, string, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + target: import("vue").PropType; + }, import("vue").ExtractPropTypes<{ + target: import("vue").PropType; + }>>; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + closeOnBack: boolean; + contained: boolean; + disabled: boolean; + noClickAnimation: boolean; + modelValue: boolean; + persistent: boolean; + scrim: string | boolean; + zIndex: string | number; + submenu: boolean; + }> & Omit<{ + theme?: string | undefined; + class?: any; + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + $children?: { + default?: ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + activator?: ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + activator?: false | ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + } | undefined; + locationStrategy: "connected" | "static" | import("vuetify/lib/types.mjs").LocationStrategyFunction; + location: import("vuetify/lib/types.mjs").Anchor; + origin: "auto" | "overlap" | import("vuetify/lib/types.mjs").Anchor; + offset?: string | number | number[] | undefined; + stickToTarget: boolean; + viewportMargin: string | number; + scrollStrategy: "block" | "close" | "none" | "reposition" | import("vuetify/lib/types.mjs").ScrollStrategyFunction; + height?: string | number | undefined; + maxHeight?: string | number | undefined; + maxWidth?: string | number | undefined; + minHeight?: string | number | undefined; + minWidth?: string | number | undefined; + width?: string | number | undefined; + closeDelay: string | number; + openDelay: string | number; + target?: "cursor" | "parent" | Element | [x: number, y: number] | import("vue").ComponentPublicInstance | (string & {}) | undefined; + activator?: "parent" | Element | import("vue").ComponentPublicInstance | (string & {}) | undefined; + activatorProps: Record; + openOnClick?: boolean | undefined; + openOnHover: boolean; + openOnFocus?: boolean | undefined; + closeOnContentClick: boolean; + retainFocus: boolean; + captureFocus: boolean; + disableInitialFocus: boolean; + eager: boolean; + transition: string | boolean | { + component: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, {}, true, {}, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, {} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, {}, {}, {}, {}>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{} & { + target?: HTMLElement | [x: number, y: number] | undefined; + } & { + $children?: { + default?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | (() => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:default"?: false | (() => import("vue").VNodeChild) | undefined; + }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, {}, {}, string, import("vue").SlotsType import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + target: import("vue").PropType; + }, import("vue").ExtractPropTypes<{ + target: import("vue").PropType; + }>>; + } | (import("vue").TransitionProps & { + component?: Component | undefined; + }) | null; + attach?: string | boolean | Element | undefined; + closeOnBack: boolean; + contained: boolean; + contentClass?: any; + contentProps?: any; + disabled: boolean; + opacity?: string | number | undefined; + noClickAnimation: boolean; + modelValue: boolean; + persistent: boolean; + scrim: string | boolean; + zIndex: string | number; + id?: string | undefined; + submenu: boolean; + "onUpdate:modelValue"?: ((value: boolean) => any) | undefined; + "v-slot:activator"?: false | ((arg: { + isActive: boolean; + props: Record; + targetRef: import("vuetify/lib/util/helpers.mjs").TemplateRef; + }) => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | ((arg: { + isActive: import("vue").Ref; + }) => import("vue").VNodeChild) | undefined; + } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "activatorProps" | "captureFocus" | "closeDelay" | "closeOnBack" | "closeOnContentClick" | "contained" | "disableInitialFocus" | "disabled" | "eager" | "location" | "locationStrategy" | "modelValue" | "noClickAnimation" | "openDelay" | "openOnClick" | "openOnFocus" | "openOnHover" | "origin" | "persistent" | "retainFocus" | "scrim" | "scrollStrategy" | "stickToTarget" | "style" | "submenu" | "transition" | "viewportMargin" | "zIndex">>; + }; + multiple: BooleanConstructor; + noDataText: { + type: StringConstructor; + default: string; + }; + openOnClear: BooleanConstructor; + itemColor: StringConstructor; + noAutoScroll: BooleanConstructor; + }>>; + }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; }; diff --git a/dist/types/componentes/EliEntrada/tiposEntradas.d.ts b/dist/types/componentes/EliEntrada/tiposEntradas.d.ts index c40b12c..f37894d 100644 --- a/dist/types/componentes/EliEntrada/tiposEntradas.d.ts +++ b/dist/types/componentes/EliEntrada/tiposEntradas.d.ts @@ -84,6 +84,53 @@ export type PadroesEntradas = { /** Variante do v-text-field (Vuetify). */ variante?: import("../../tipos").CampoVariante; }>; + paragrafo: tipoPadraoEntrada; + selecao: tipoPadraoEntrada { + chave: string; + rotulo: string; + }[] | Promise<{ + chave: string; + rotulo: string; + }[]>; + /** Se true, mostra ícone para limpar o valor (Vuetify clearable). */ + limpavel?: boolean; + /** Estado de erro (visual). */ + erro?: boolean; + /** Mensagens de erro. */ + mensagensErro?: string | string[]; + /** Texto de apoio. */ + dica?: string; + /** Mantém a dica sempre visível. */ + dicaPersistente?: boolean; + /** Densidade do campo (Vuetify). */ + densidade?: import("../../tipos").CampoDensidade; + /** Variante do v-text-field (Vuetify). */ + variante?: import("../../tipos").CampoVariante; + }>; }; /** * União dos tipos de entrada suportados. diff --git a/dist/types/componentes/EliTabela/EliTabela.vue.d.ts b/dist/types/componentes/EliTabela/EliTabela.vue.d.ts index eee6bea..c217e76 100644 --- a/dist/types/componentes/EliTabela/EliTabela.vue.d.ts +++ b/dist/types/componentes/EliTabela/EliTabela.vue.d.ts @@ -453,6 +453,37 @@ declare const __VLS_export: import("vue").DefineComponent void; } | { numero: number; + prefixo?: string; + sufixo?: string; + acao?: () => void; + } | { + opcoes: { + rotulo: string; + cor + /** + * EliTabela + * Componente de tabela consultável com busca, paginação, ordenação e ações por linha. + */ + /** Dependências do Vue (Composition API) */ + ?: string; + icone + /** + * EliTabela + * Componente de tabela consultável com busca, paginação, ordenação e ações por linha. + */ + /** Dependências do Vue (Composition API) */ + ?: import("lucide-vue-next").LucideIcon; + acao + /** + * EliTabela + * Componente de tabela consultável com busca, paginação, ordenação e ações por linha. + */ + /** Dependências do Vue (Composition API) */ + ?: () => void; + }[]; + } | { + valor: string; + formato: "data" | "data_hora" | "relativo"; acao?: () => void; }>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly void; } | { numero: number; + prefixo?: string; + sufixo?: string; + acao?: () => void; + } | { + opcoes: { + rotulo: string; + cor + /** + * EliTabela + * Componente de tabela consultável com busca, paginação, ordenação e ações por linha. + */ + /** Dependências do Vue (Composition API) */ + ?: string; + icone + /** + * EliTabela + * Componente de tabela consultável com busca, paginação, ordenação e ações por linha. + */ + /** Dependências do Vue (Composition API) */ + ?: import("lucide-vue-next").LucideIcon; + acao + /** + * EliTabela + * Componente de tabela consultável com busca, paginação, ordenação e ações por linha. + */ + /** Dependências do Vue (Composition API) */ + ?: () => void; + }[]; + } | { + valor: string; + formato: "data" | "data_hora" | "relativo"; acao?: () => void; }>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly { + chave: string; + rotulo: string; + }[] | Promise<{ + chave: string; + rotulo: string; + }[]>; + limpavel?: boolean | undefined; + erro?: boolean | undefined; + mensagensErro?: string | string[] | undefined; + dica?: string | undefined; + dicaPersistente?: boolean | undefined; + densidade?: import("../../tipos/entrada.js").CampoDensidade | undefined; + variante?: import("../../tipos/entrada.js").CampoVariante | undefined; }]; operador: string; valor: any; @@ -744,6 +835,35 @@ declare const __VLS_export: import("vue").DefineComponent { + chave: string; + rotulo: string; + }[] | Promise<{ + chave: string; + rotulo: string; + }[]>; + limpavel?: boolean | undefined; + erro?: boolean | undefined; + mensagensErro?: string | string[] | undefined; + dica?: string | undefined; + dicaPersistente?: boolean | undefined; + densidade?: import("../../tipos/entrada.js").CampoDensidade | undefined; + variante?: import("../../tipos/entrada.js").CampoVariante | undefined; }]; operador: string; valor: any; @@ -1064,8 +1184,8 @@ declare const __VLS_export: import("vue").DefineComponent any) | undefined; onFocus?: (() => any) | undefined; onBlur?: (() => any) | undefined; - onAlterar?: ((_v: string | null) => any) | undefined; "onUpdate:modelValue"?: ((_v: string | null) => any) | undefined; + onAlterar?: ((_v: string | null) => any) | undefined; onFoco?: (() => any) | undefined; onDesfoco?: (() => any) | undefined; }>, { @@ -1096,8 +1216,8 @@ declare const __VLS_export: import("vue").DefineComponent; opcoesEntrada: (entrada: import("../EliEntrada/tiposEntradas.js").ComponenteEntrada) => any; diff --git a/dist/types/componentes/EliTabela/EliTabelaBody.vue.d.ts b/dist/types/componentes/EliTabela/EliTabelaBody.vue.d.ts index ac564d3..0fc5755 100644 --- a/dist/types/componentes/EliTabela/EliTabelaBody.vue.d.ts +++ b/dist/types/componentes/EliTabela/EliTabelaBody.vue.d.ts @@ -101,6 +101,19 @@ declare const __VLS_export: import("vue").DefineComponent void; } | { numero: number; + prefixo?: string; + sufixo?: string; + acao?: () => void; + } | { + opcoes: { + rotulo: string; + cor?: string; + icone?: import("lucide-vue-next").LucideIcon; + acao?: () => void; + }[]; + } | { + valor: string; + formato: "data" | "data_hora" | "relativo"; acao?: () => void; }>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly void; } | { numero: number; + prefixo?: string; + sufixo?: string; + acao?: () => void; + } | { + opcoes: { + rotulo: string; + cor?: string; + icone?: import("lucide-vue-next").LucideIcon; + acao?: () => void; + }[]; + } | { + valor: string; + formato: "data" | "data_hora" | "relativo"; acao?: () => void; }>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly void; } | { numero: number; + prefixo?: string; + sufixo?: string; + acao?: () => void; + } | { + opcoes: { + rotulo: string; + cor?: string; + icone?: import("lucide-vue-next").LucideIcon; + acao?: () => void; + }[]; + } | { + valor: string; + formato: "data" | "data_hora" | "relativo"; acao?: () => void; }>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly { + chave: string; + rotulo: string; + }[] | Promise<{ + chave: string; + rotulo: string; + }[]>; + limpavel?: boolean | undefined; + erro?: boolean | undefined; + mensagensErro?: string | string[] | undefined; + dica?: string | undefined; + dicaPersistente?: boolean | undefined; + densidade?: import("../../tipos").CampoDensidade | undefined; + variante?: import("../../tipos").CampoVariante | undefined; }]; operador: string; valor: any; @@ -78,6 +107,35 @@ declare const __VLS_export: import("vue").DefineComponent { + chave: string; + rotulo: string; + }[] | Promise<{ + chave: string; + rotulo: string; + }[]>; + limpavel?: boolean | undefined; + erro?: boolean | undefined; + mensagensErro?: string | string[] | undefined; + dica?: string | undefined; + dicaPersistente?: boolean | undefined; + densidade?: import("../../tipos").CampoDensidade | undefined; + variante?: import("../../tipos").CampoVariante | undefined; }]; operador: string; valor: any; @@ -398,8 +456,8 @@ declare const __VLS_export: import("vue").DefineComponent any) | undefined; onFocus?: (() => any) | undefined; onBlur?: (() => any) | undefined; - onAlterar?: ((_v: string | null) => any) | undefined; "onUpdate:modelValue"?: ((_v: string | null) => any) | undefined; + onAlterar?: ((_v: string | null) => any) | undefined; onFoco?: (() => any) | undefined; onDesfoco?: (() => any) | undefined; }>, { @@ -430,8 +488,8 @@ declare const __VLS_export: import("vue").DefineComponent; opcoesEntrada: (entrada: ComponenteEntrada) => any; diff --git a/dist/types/componentes/EliTabela/celulas/EliTabelaCelula.vue.d.ts b/dist/types/componentes/EliTabela/celulas/EliTabelaCelula.vue.d.ts index e0bd3b7..d1fe593 100644 --- a/dist/types/componentes/EliTabela/celulas/EliTabelaCelula.vue.d.ts +++ b/dist/types/componentes/EliTabela/celulas/EliTabelaCelula.vue.d.ts @@ -16,6 +16,19 @@ declare const __VLS_export: import("vue").DefineComponent void; } | { numero: number; + prefixo?: string; + sufixo?: string; + acao?: () => void; + } | { + opcoes: { + rotulo: string; + cor?: string; + icone?: import("lucide-vue-next").LucideIcon; + acao?: () => void; + }[]; + } | { + valor: string; + formato: "data" | "data_hora" | "relativo"; acao?: () => void; }>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly, { dados: { numero: number; + prefixo?: string; + sufixo?: string; acao?: () => void; } | undefined; + textoNumero: import("vue").ComputedRef; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly; diff --git a/dist/types/componentes/EliTabela/celulas/registryTabelaCelulas.d.ts b/dist/types/componentes/EliTabela/celulas/registryTabelaCelulas.d.ts index 8d25a24..8597918 100644 --- a/dist/types/componentes/EliTabela/celulas/registryTabelaCelulas.d.ts +++ b/dist/types/componentes/EliTabela/celulas/registryTabelaCelulas.d.ts @@ -34,11 +34,711 @@ export declare const registryTabelaCelulas: { }>, { dados: { numero: number; + prefixo?: string; + sufixo?: string; acao?: () => void; } | undefined; + textoNumero: import("vue").ComputedRef; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly; }; }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; + readonly tags: import("vue").DefineComponent; + required: false; + }; + }>, { + dados: { + opcoes: { + rotulo: string; + cor?: string; + icone?: import("lucide-vue-next").LucideIcon; + acao?: () => void; + }[]; + } | undefined; + }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly; + required: false; + }; + }>> & Readonly<{}>, {}, {}, { + VChip: { + new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + disabled: boolean; + size: string | number; + replace: boolean; + exact: boolean; + closable: boolean; + closeIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + closeLabel: string; + draggable: boolean; + filter: boolean; + filterIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + label: boolean; + pill: boolean; + ripple: boolean | { + class?: string | undefined; + keys?: string[] | undefined; + }; + modelValue: boolean; + } & { + theme?: string | undefined; + class?: any; + border?: string | number | boolean | undefined; + elevation?: string | number | undefined; + rounded?: string | number | boolean | undefined; + color?: string | undefined; + value?: any; + selectedClass?: string | undefined; + href?: string | undefined; + to?: string | import("vue-router").RouteLocationAsPathGeneric | import("vue-router").RouteLocationAsRelativeGeneric | undefined; + activeClass?: string | undefined; + appendAvatar?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + link?: boolean | undefined; + prependAvatar?: string | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + text?: string | number | boolean | undefined; + onClick?: ((args_0: MouseEvent) => void) | undefined; + onClickOnce?: ((args_0: MouseEvent) => void) | undefined; + } & { + $children?: { + default?: ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | undefined; + label?: (() => import("vue").VNodeChild) | undefined; + prepend?: (() => import("vue").VNodeChild) | undefined; + append?: (() => import("vue").VNodeChild) | undefined; + close?: (() => import("vue").VNodeChild) | undefined; + filter?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | undefined; + label?: false | (() => import("vue").VNodeChild) | undefined; + prepend?: false | (() => import("vue").VNodeChild) | undefined; + append?: false | (() => import("vue").VNodeChild) | undefined; + close?: false | (() => import("vue").VNodeChild) | undefined; + filter?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:close"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | undefined; + "v-slot:filter"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | (() => import("vue").VNodeChild) | undefined; + } & { + onClick?: ((e: KeyboardEvent | MouseEvent) => any) | undefined; + "onClick:close"?: ((e: MouseEvent) => any) | undefined; + "onGroup:selected"?: ((val: { + value: boolean; + }) => any) | undefined; + "onUpdate:modelValue"?: ((value: boolean) => any) | undefined; + }, () => false | JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { + "click:close": (e: MouseEvent) => true; + "update:modelValue": (value: boolean) => true; + "group:selected": (val: { + value: boolean; + }) => true; + click: (e: KeyboardEvent | MouseEvent) => true; + }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, { + style: import("vue").StyleValue; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + disabled: boolean; + size: string | number; + replace: boolean; + exact: boolean; + closable: boolean; + closeIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + closeLabel: string; + draggable: boolean; + filter: boolean; + filterIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + label: boolean; + link: boolean; + pill: boolean; + ripple: boolean | { + class?: string | undefined; + keys?: string[] | undefined; + } | undefined; + text: string | number | boolean; + modelValue: boolean; + }, true, {}, import("vue").SlotsType void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNode[]; + label: () => import("vue").VNode[]; + prepend: () => import("vue").VNode[]; + append: () => import("vue").VNode[]; + close: () => import("vue").VNode[]; + filter: () => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { + P: {}; + B: {}; + D: {}; + C: {}; + M: {}; + Defaults: {}; + }, { + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + disabled: boolean; + size: string | number; + replace: boolean; + exact: boolean; + closable: boolean; + closeIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + closeLabel: string; + draggable: boolean; + filter: boolean; + filterIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + label: boolean; + pill: boolean; + ripple: boolean | { + class?: string | undefined; + keys?: string[] | undefined; + }; + modelValue: boolean; + } & { + theme?: string | undefined; + class?: any; + border?: string | number | boolean | undefined; + elevation?: string | number | undefined; + rounded?: string | number | boolean | undefined; + color?: string | undefined; + value?: any; + selectedClass?: string | undefined; + href?: string | undefined; + to?: string | import("vue-router").RouteLocationAsPathGeneric | import("vue-router").RouteLocationAsRelativeGeneric | undefined; + activeClass?: string | undefined; + appendAvatar?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + link?: boolean | undefined; + prependAvatar?: string | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + text?: string | number | boolean | undefined; + onClick?: ((args_0: MouseEvent) => void) | undefined; + onClickOnce?: ((args_0: MouseEvent) => void) | undefined; + } & { + $children?: { + default?: ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | undefined; + label?: (() => import("vue").VNodeChild) | undefined; + prepend?: (() => import("vue").VNodeChild) | undefined; + append?: (() => import("vue").VNodeChild) | undefined; + close?: (() => import("vue").VNodeChild) | undefined; + filter?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | undefined; + label?: false | (() => import("vue").VNodeChild) | undefined; + prepend?: false | (() => import("vue").VNodeChild) | undefined; + append?: false | (() => import("vue").VNodeChild) | undefined; + close?: false | (() => import("vue").VNodeChild) | undefined; + filter?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:close"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | undefined; + "v-slot:filter"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | (() => import("vue").VNodeChild) | undefined; + } & { + onClick?: ((e: KeyboardEvent | MouseEvent) => any) | undefined; + "onClick:close"?: ((e: MouseEvent) => any) | undefined; + "onGroup:selected"?: ((val: { + value: boolean; + }) => any) | undefined; + "onUpdate:modelValue"?: ((value: boolean) => any) | undefined; + }, () => false | JSX.Element, {}, {}, {}, { + style: import("vue").StyleValue; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + disabled: boolean; + size: string | number; + replace: boolean; + exact: boolean; + closable: boolean; + closeIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + closeLabel: string; + draggable: boolean; + filter: boolean; + filterIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + label: boolean; + link: boolean; + pill: boolean; + ripple: boolean | { + class?: string | undefined; + keys?: string[] | undefined; + } | undefined; + text: string | number | boolean; + modelValue: boolean; + }>; + __isFragment?: undefined; + __isTeleport?: undefined; + __isSuspense?: undefined; + } & import("vue").ComponentOptionsBase<{ + style: string | false | import("vue").StyleValue[] | import("vue").CSSProperties | null; + density: import("vuetify/lib/composables/density.mjs").Density; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + disabled: boolean; + size: string | number; + replace: boolean; + exact: boolean; + closable: boolean; + closeIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + closeLabel: string; + draggable: boolean; + filter: boolean; + filterIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + label: boolean; + pill: boolean; + ripple: boolean | { + class?: string | undefined; + keys?: string[] | undefined; + }; + modelValue: boolean; + } & { + theme?: string | undefined; + class?: any; + border?: string | number | boolean | undefined; + elevation?: string | number | undefined; + rounded?: string | number | boolean | undefined; + color?: string | undefined; + value?: any; + selectedClass?: string | undefined; + href?: string | undefined; + to?: string | import("vue-router").RouteLocationAsPathGeneric | import("vue-router").RouteLocationAsRelativeGeneric | undefined; + activeClass?: string | undefined; + appendAvatar?: string | undefined; + appendIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + baseColor?: string | undefined; + link?: boolean | undefined; + prependAvatar?: string | undefined; + prependIcon?: import("vuetify/lib/composables/icons.mjs").IconValue | undefined; + text?: string | number | boolean | undefined; + onClick?: ((args_0: MouseEvent) => void) | undefined; + onClickOnce?: ((args_0: MouseEvent) => void) | undefined; + } & { + $children?: { + default?: ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | undefined; + label?: (() => import("vue").VNodeChild) | undefined; + prepend?: (() => import("vue").VNodeChild) | undefined; + append?: (() => import("vue").VNodeChild) | undefined; + close?: (() => import("vue").VNodeChild) | undefined; + filter?: (() => import("vue").VNodeChild) | undefined; + } | { + $stable?: boolean | undefined; + } | ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | import("vue").VNodeChild; + "v-slots"?: { + default?: false | ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | undefined; + label?: false | (() => import("vue").VNodeChild) | undefined; + prepend?: false | (() => import("vue").VNodeChild) | undefined; + append?: false | (() => import("vue").VNodeChild) | undefined; + close?: false | (() => import("vue").VNodeChild) | undefined; + filter?: false | (() => import("vue").VNodeChild) | undefined; + } | undefined; + } & { + "v-slot:append"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:close"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:default"?: false | ((arg: { + isSelected: boolean | undefined; + selectedClass: boolean | (string | undefined)[] | undefined; + select: ((value: boolean) => void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNodeChild) | undefined; + "v-slot:filter"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:label"?: false | (() => import("vue").VNodeChild) | undefined; + "v-slot:prepend"?: false | (() => import("vue").VNodeChild) | undefined; + } & { + onClick?: ((e: KeyboardEvent | MouseEvent) => any) | undefined; + "onClick:close"?: ((e: MouseEvent) => any) | undefined; + "onGroup:selected"?: ((val: { + value: boolean; + }) => any) | undefined; + "onUpdate:modelValue"?: ((value: boolean) => any) | undefined; + }, () => false | JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { + "click:close": (e: MouseEvent) => true; + "update:modelValue": (value: boolean) => true; + "group:selected": (val: { + value: boolean; + }) => true; + click: (e: KeyboardEvent | MouseEvent) => true; + }, string, { + style: import("vue").StyleValue; + density: import("vuetify/lib/composables/density.mjs").Density; + rounded: string | number | boolean; + tile: boolean; + tag: string | import("vuetify/lib/types.mjs").JSXComponent; + variant: "elevated" | "flat" | "outlined" | "plain" | "text" | "tonal"; + disabled: boolean; + size: string | number; + replace: boolean; + exact: boolean; + closable: boolean; + closeIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + closeLabel: string; + draggable: boolean; + filter: boolean; + filterIcon: import("vuetify/lib/composables/icons.mjs").IconValue; + label: boolean; + link: boolean; + pill: boolean; + ripple: boolean | { + class?: string | undefined; + keys?: string[] | undefined; + } | undefined; + text: string | number | boolean; + modelValue: boolean; + }, {}, string, import("vue").SlotsType void) | undefined; + toggle: (() => void) | undefined; + value: unknown; + disabled: boolean; + }) => import("vue").VNode[]; + label: () => import("vue").VNode[]; + prepend: () => import("vue").VNode[]; + append: () => import("vue").VNode[]; + close: () => import("vue").VNode[]; + filter: () => import("vue").VNode[]; + }>>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vuetify/lib/util/defineComponent.mjs").FilterPropsOptions<{ + theme: StringConstructor; + class: import("vue").PropType; + style: { + type: import("vue").PropType; + default: null; + }; + border: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + density: { + type: import("vue").PropType; + default: string; + validator: (v: any) => boolean; + }; + elevation: { + type: (NumberConstructor | StringConstructor)[]; + validator(v: any): boolean; + }; + rounded: { + type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + default: undefined; + }; + tile: BooleanConstructor; + tag: Omit<{ + type: import("vue").PropType; + default: string; + }, "default" | "type"> & { + type: import("vue").PropType; + default: NonNullable; + }; + color: StringConstructor; + variant: Omit<{ + type: import("vue").PropType<"elevated" | "flat" | "outlined" | "plain" | "text" | "tonal">; + default: string; + validator: (v: any) => boolean; + }, "default" | "type"> & { + type: import("vue").PropType<"elevated" | "flat" | "outlined" | "plain" | "text" | "tonal">; + default: NonNullable<"elevated" | "flat" | "outlined" | "plain" | "text" | "tonal">; + }; + value: null; + disabled: BooleanConstructor; + selectedClass: StringConstructor; + size: { + type: (NumberConstructor | StringConstructor)[]; + default: string; + }; + href: StringConstructor; + replace: BooleanConstructor; + to: import("vue").PropType; + exact: BooleanConstructor; + activeClass: StringConstructor; + appendAvatar: StringConstructor; + appendIcon: import("vue").PropType; + baseColor: StringConstructor; + closable: BooleanConstructor; + closeIcon: { + type: import("vue").PropType; + default: string; + }; + closeLabel: { + type: StringConstructor; + default: string; + }; + draggable: BooleanConstructor; + filter: BooleanConstructor; + filterIcon: { + type: import("vue").PropType; + default: string; + }; + label: BooleanConstructor; + link: { + type: BooleanConstructor; + default: undefined; + }; + pill: BooleanConstructor; + prependAvatar: StringConstructor; + prependIcon: import("vue").PropType; + ripple: { + type: import("vue").PropType; + default: boolean; + }; + text: { + type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + default: undefined; + }; + modelValue: { + type: BooleanConstructor; + default: boolean; + }; + onClick: import("vue").PropType<(args_0: MouseEvent) => void>; + onClickOnce: import("vue").PropType<(args_0: MouseEvent) => void>; + }, import("vue").ExtractPropTypes<{ + theme: StringConstructor; + class: import("vue").PropType; + style: { + type: import("vue").PropType; + default: null; + }; + border: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + density: { + type: import("vue").PropType; + default: string; + validator: (v: any) => boolean; + }; + elevation: { + type: (NumberConstructor | StringConstructor)[]; + validator(v: any): boolean; + }; + rounded: { + type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + default: undefined; + }; + tile: BooleanConstructor; + tag: Omit<{ + type: import("vue").PropType; + default: string; + }, "default" | "type"> & { + type: import("vue").PropType; + default: NonNullable; + }; + color: StringConstructor; + variant: Omit<{ + type: import("vue").PropType<"elevated" | "flat" | "outlined" | "plain" | "text" | "tonal">; + default: string; + validator: (v: any) => boolean; + }, "default" | "type"> & { + type: import("vue").PropType<"elevated" | "flat" | "outlined" | "plain" | "text" | "tonal">; + default: NonNullable<"elevated" | "flat" | "outlined" | "plain" | "text" | "tonal">; + }; + value: null; + disabled: BooleanConstructor; + selectedClass: StringConstructor; + size: { + type: (NumberConstructor | StringConstructor)[]; + default: string; + }; + href: StringConstructor; + replace: BooleanConstructor; + to: import("vue").PropType; + exact: BooleanConstructor; + activeClass: StringConstructor; + appendAvatar: StringConstructor; + appendIcon: import("vue").PropType; + baseColor: StringConstructor; + closable: BooleanConstructor; + closeIcon: { + type: import("vue").PropType; + default: string; + }; + closeLabel: { + type: StringConstructor; + default: string; + }; + draggable: BooleanConstructor; + filter: BooleanConstructor; + filterIcon: { + type: import("vue").PropType; + default: string; + }; + label: BooleanConstructor; + link: { + type: BooleanConstructor; + default: undefined; + }; + pill: BooleanConstructor; + prependAvatar: StringConstructor; + prependIcon: import("vue").PropType; + ripple: { + type: import("vue").PropType; + default: boolean; + }; + text: { + type: (BooleanConstructor | NumberConstructor | StringConstructor)[]; + default: undefined; + }; + modelValue: { + type: BooleanConstructor; + default: boolean; + }; + onClick: import("vue").PropType<(args_0: MouseEvent) => void>; + onClickOnce: import("vue").PropType<(args_0: MouseEvent) => void>; + }>>; + }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; + readonly data: import("vue").DefineComponent; + required: false; + }; + }>, { + dados: { + valor: string; + formato: "data" | "data_hora" | "relativo"; + acao?: () => void; + } | undefined; + textoData: import("vue").ComputedRef; + }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly; + required: false; + }; + }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; }; diff --git a/dist/types/componentes/EliTabela/celulas/tiposTabelaCelulas.d.ts b/dist/types/componentes/EliTabela/celulas/tiposTabelaCelulas.d.ts index 44ee6f9..9bd57f6 100644 --- a/dist/types/componentes/EliTabela/celulas/tiposTabelaCelulas.d.ts +++ b/dist/types/componentes/EliTabela/celulas/tiposTabelaCelulas.d.ts @@ -1,6 +1,7 @@ /** * Tipagem dos dados de entrada dos componentes de celulas */ +import type { LucideIcon } from "lucide-vue-next"; export type TiposTabelaCelulas = { textoSimples: { texto: string; @@ -12,6 +13,30 @@ export type TiposTabelaCelulas = { }; numero: { numero: number; + /** Texto opcional exibido antes do número (ex.: "R$", "≈"). */ + prefixo?: string; + /** Texto opcional exibido depois do número (ex.: "kg", "%"). */ + sufixo?: string; + acao?: () => void; + }; + tags: { + opcoes: { + /** Texto exibido dentro da tag. */ + rotulo: string; + /** Cor do chip (segue as cores do Vuetify, ex.: "primary", "success", "error"). */ + cor?: string; + /** Ícone (Lucide) opcional exibido antes do rótulo. */ + icone?: LucideIcon; + /** Ação opcional da tag. Quando existir, o chip vira clicável. */ + acao?: () => void; + }[]; + }; + data: { + /** Valor em ISO 8601 (ex.: "2026-01-09T16:15:00Z"). */ + valor: string; + /** Define o formato de exibição. */ + formato: "data" | "data_hora" | "relativo"; + /** Ação opcional ao clicar no valor. */ acao?: () => void; }; }; diff --git a/dist/types/index.d.ts b/dist/types/index.d.ts index 1b245ef..971736f 100644 --- a/dist/types/index.d.ts +++ b/dist/types/index.d.ts @@ -5,12 +5,12 @@ import { EliBotao } from "./componentes/botao"; import { EliBadge } from "./componentes/indicador"; import { EliCartao } from "./componentes/cartao"; import { EliTabela } from "./componentes/EliTabela"; -import { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora } from "./componentes/EliEntrada"; +import { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora, EliEntradaParagrafo, EliEntradaSelecao } from "./componentes/EliEntrada"; export { EliOlaMundo }; export { EliBotao }; export { EliBadge }; export { EliCartao }; export { EliTabela }; -export { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora }; +export { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora, EliEntradaParagrafo, EliEntradaSelecao }; declare const EliVue: Plugin; export default EliVue; diff --git a/package.json b/package.json index 3d3fc2a..2b03837 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "eli-vue", - "version": "0.1.71", + "version": "0.1.81", "private": false, "main": "./dist/eli-vue.umd.js", "module": "./dist/eli-vue.es.js", diff --git a/src/componentes/EliEntrada/EliEntradaParagrafo.vue b/src/componentes/EliEntrada/EliEntradaParagrafo.vue new file mode 100644 index 0000000..d74014b --- /dev/null +++ b/src/componentes/EliEntrada/EliEntradaParagrafo.vue @@ -0,0 +1,66 @@ + + + + + \ No newline at end of file diff --git a/src/componentes/EliEntrada/EliEntradaSelecao.vue b/src/componentes/EliEntrada/EliEntradaSelecao.vue new file mode 100644 index 0000000..307a67e --- /dev/null +++ b/src/componentes/EliEntrada/EliEntradaSelecao.vue @@ -0,0 +1,93 @@ + + + + + \ No newline at end of file diff --git a/src/componentes/EliEntrada/README.md b/src/componentes/EliEntrada/README.md index 2d2ee12..44a9cd7 100644 --- a/src/componentes/EliEntrada/README.md +++ b/src/componentes/EliEntrada/README.md @@ -121,6 +121,84 @@ Exemplo: /> ``` +--- + +#### 4) `EliEntradaParagrafo` + +Entrada de texto multi-linha (equivalente a um **textarea**). + +**Value**: `string | null | undefined` + +**Opções** (além de `rotulo`/`placeholder`): + +- `linhas?: number` (default: `4`) +- `limiteCaracteres?: number` +- `limpavel?: boolean` +- `erro?: boolean` +- `mensagensErro?: string | string[]` +- `dica?: string` +- `dicaPersistente?: boolean` +- `densidade?: CampoDensidade` +- `variante?: CampoVariante` + +Exemplo: + +```vue + +``` + +--- + +#### 5) `EliEntradaSelecao` + +Entrada de seleção (select) com carregamento de itens via função. + +**Value**: `string | null | undefined` (chave do item selecionado) + +**Opções** (além de `rotulo`/`placeholder`): + +- `itens: () => {chave: string; rotulo: string}[] | Promise<{chave: string; rotulo: string}[]>` +- `limpavel?: boolean` +- `erro?: boolean` +- `mensagensErro?: string | string[]` +- `dica?: string` +- `dicaPersistente?: boolean` +- `densidade?: CampoDensidade` +- `variante?: CampoVariante` + +Comportamento: +- Ao montar, o componente chama `opcoes.itens()`. +- Enquanto carrega, o select fica em `loading` e desabilitado. + +Exemplo: + +```vue + +``` + ### Compatibilidade Vue 2 / Vue 3 Padrão recomendado (Vue 3): diff --git a/src/componentes/EliEntrada/index.ts b/src/componentes/EliEntrada/index.ts index 55ac506..e4a747c 100644 --- a/src/componentes/EliEntrada/index.ts +++ b/src/componentes/EliEntrada/index.ts @@ -1,6 +1,8 @@ import EliEntradaTexto from "./EliEntradaTexto.vue"; import EliEntradaNumero from "./EliEntradaNumero.vue"; import EliEntradaDataHora from "./EliEntradaDataHora.vue"; +import EliEntradaParagrafo from "./EliEntradaParagrafo.vue"; +import EliEntradaSelecao from "./EliEntradaSelecao.vue"; -export { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora }; +export { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora, EliEntradaParagrafo, EliEntradaSelecao }; export type { PadroesEntradas, TipoEntrada } from "./tiposEntradas"; diff --git a/src/componentes/EliEntrada/registryEliEntradas.ts b/src/componentes/EliEntrada/registryEliEntradas.ts index 99e21c6..1febd7d 100644 --- a/src/componentes/EliEntrada/registryEliEntradas.ts +++ b/src/componentes/EliEntrada/registryEliEntradas.ts @@ -3,6 +3,8 @@ import type { Component } from "vue"; import EliEntradaTexto from "./EliEntradaTexto.vue"; import EliEntradaNumero from "./EliEntradaNumero.vue"; import EliEntradaDataHora from "./EliEntradaDataHora.vue"; +import EliEntradaParagrafo from "./EliEntradaParagrafo.vue"; +import EliEntradaSelecao from "./EliEntradaSelecao.vue"; import type { TipoEntrada } from "./tiposEntradas"; @@ -10,4 +12,6 @@ export const registryTabelaCelulas = { texto: EliEntradaTexto, numero: EliEntradaNumero, dataHora: EliEntradaDataHora, + paragrafo: EliEntradaParagrafo, + selecao: EliEntradaSelecao, } as const satisfies Record; diff --git a/src/componentes/EliEntrada/tiposEntradas.ts b/src/componentes/EliEntrada/tiposEntradas.ts index 5dd16c6..faa1313 100644 --- a/src/componentes/EliEntrada/tiposEntradas.ts +++ b/src/componentes/EliEntrada/tiposEntradas.ts @@ -113,6 +113,72 @@ export type PadroesEntradas = { variante?: import("../../tipos").CampoVariante } > + + paragrafo: tipoPadraoEntrada< + string | null | undefined, + { + /** Quantidade de linhas visíveis no textarea (Vuetify `rows`). */ + linhas?: number + + /** Limite máximo de caracteres permitidos (se definido). */ + limiteCaracteres?: number + + /** Se true, mostra ícone para limpar o valor (Vuetify clearable). */ + limpavel?: boolean + + /** Estado de erro (visual). */ + erro?: boolean + + /** Mensagens de erro. */ + mensagensErro?: string | string[] + + /** Texto de apoio. */ + dica?: string + + /** Mantém a dica sempre visível. */ + dicaPersistente?: boolean + + /** Densidade do campo (Vuetify). */ + densidade?: import("../../tipos").CampoDensidade + + /** Variante do v-text-field (Vuetify). */ + variante?: import("../../tipos").CampoVariante + } + > + + selecao: tipoPadraoEntrada< + string | null | undefined, + { + /** + * Carrega os itens da seleção (sincrono ou async). + * - Cada item precisa ter uma chave estável (value) e um rótulo (title). + */ + itens: () => + | { chave: string; rotulo: string }[] + | Promise<{ chave: string; rotulo: string }[]> + + /** Se true, mostra ícone para limpar o valor (Vuetify clearable). */ + limpavel?: boolean + + /** Estado de erro (visual). */ + erro?: boolean + + /** Mensagens de erro. */ + mensagensErro?: string | string[] + + /** Texto de apoio. */ + dica?: string + + /** Mantém a dica sempre visível. */ + dicaPersistente?: boolean + + /** Densidade do campo (Vuetify). */ + densidade?: import("../../tipos").CampoDensidade + + /** Variante do v-text-field (Vuetify). */ + variante?: import("../../tipos").CampoVariante + } + > } /** diff --git a/src/componentes/EliTabela/celulas/EliTabelaCelulaData.vue b/src/componentes/EliTabela/celulas/EliTabelaCelulaData.vue new file mode 100644 index 0000000..d3bf558 --- /dev/null +++ b/src/componentes/EliTabela/celulas/EliTabelaCelulaData.vue @@ -0,0 +1,78 @@ + + + + + \ No newline at end of file diff --git a/src/componentes/EliTabela/celulas/EliTabelaCelulaNumero.vue b/src/componentes/EliTabela/celulas/EliTabelaCelulaNumero.vue index 37c301b..c1b6620 100644 --- a/src/componentes/EliTabela/celulas/EliTabelaCelulaNumero.vue +++ b/src/componentes/EliTabela/celulas/EliTabelaCelulaNumero.vue @@ -5,13 +5,13 @@ class="eli-tabela__celula-link" @click.stop.prevent="dados.acao()" > - {{ String(dados?.numero).replace('.', ',') }} + {{ textoNumero }} - {{ String(dados?.numero).replace('.', ',') }} + {{ textoNumero }} diff --git a/src/componentes/EliTabela/celulas/EliTabelaCelulaTags.vue b/src/componentes/EliTabela/celulas/EliTabelaCelulaTags.vue new file mode 100644 index 0000000..a4e49bf --- /dev/null +++ b/src/componentes/EliTabela/celulas/EliTabelaCelulaTags.vue @@ -0,0 +1,61 @@ + + + + + \ No newline at end of file diff --git a/src/componentes/EliTabela/celulas/README.md b/src/componentes/EliTabela/celulas/README.md new file mode 100644 index 0000000..ae7a0d0 --- /dev/null +++ b/src/componentes/EliTabela/celulas/README.md @@ -0,0 +1,81 @@ +# Células da EliTabela + +Este diretório contém os componentes de **célula** usados pela `EliTabela`. + +## Como funcionam as células + +A `EliTabela` não renderiza o conteúdo direto: cada coluna retorna uma tupla tipada via helper: + +```ts +import { celulaTabela } from "@/componentes/EliTabela"; + +celula: (linha) => celulaTabela("textoSimples", { texto: linha.nome }) +``` + +O `tipo` seleciona qual componente de célula será usado (via registry) e o `dados` define o payload tipado. + +--- + +## Tipos disponíveis + +### 1) `textoSimples` + +```ts +{ texto: string; acao?: () => void } +``` + +### 2) `textoTruncado` + +```ts +{ texto: string; acao?: () => void } +``` + +### 3) `numero` + +```ts +{ numero: number; prefixo?: string; sufixo?: string; acao?: () => void } +``` + +Exemplos: + +```ts +// moeda +celula: (l) => celulaTabela("numero", { numero: l.total, prefixo: "R$" }) + +// unidade de medida +celula: (l) => celulaTabela("numero", { numero: l.peso, sufixo: "kg" }) +``` + +### 4) `tags` + +```ts +{ + opcoes: { + rotulo: string; + cor?: string; + icone?: import("lucide-vue-next").LucideIcon; + acao?: () => void; + }[] +} +``` + +### 5) `data` + +```ts +{ valor: string; formato: "data" | "data_hora" | "relativo"; acao?: () => void } +``` + +Exemplos: + +```ts +celula: (l) => celulaTabela("data", { valor: l.criado_em, formato: "data" }) +celula: (l) => celulaTabela("data", { valor: l.criado_em, formato: "data_hora" }) +celula: (l) => celulaTabela("data", { valor: l.atualizado_em, formato: "relativo" }) +``` + +--- + +## Onde ficam os tipos e o registry + +- Tipos: `src/componentes/EliTabela/celulas/tiposTabelaCelulas.ts` +- Registry: `src/componentes/EliTabela/celulas/registryTabelaCelulas.ts` diff --git a/src/componentes/EliTabela/celulas/registryTabelaCelulas.ts b/src/componentes/EliTabela/celulas/registryTabelaCelulas.ts index 947b8ec..283caaf 100644 --- a/src/componentes/EliTabela/celulas/registryTabelaCelulas.ts +++ b/src/componentes/EliTabela/celulas/registryTabelaCelulas.ts @@ -3,10 +3,14 @@ import type { Component } from "vue"; import EliTabelaCelulaTextoSimples from "./EliTabelaCelulaTextoSimples.vue"; import EliTabelaCelulaTextoTruncado from "./EliTabelaCelulaTextoTruncado.vue"; import EliTabelaCelulaNumero from "./EliTabelaCelulaNumero.vue"; +import EliTabelaCelulaTags from "./EliTabelaCelulaTags.vue"; +import EliTabelaCelulaData from "./EliTabelaCelulaData.vue"; import type { TipoTabelaCelula } from "./tiposTabelaCelulas"; export const registryTabelaCelulas = { textoSimples: EliTabelaCelulaTextoSimples, textoTruncado: EliTabelaCelulaTextoTruncado, numero: EliTabelaCelulaNumero, + tags: EliTabelaCelulaTags, + data: EliTabelaCelulaData, } as const satisfies Record; diff --git a/src/componentes/EliTabela/celulas/tiposTabelaCelulas.ts b/src/componentes/EliTabela/celulas/tiposTabelaCelulas.ts index d22ef1b..7f8eed5 100644 --- a/src/componentes/EliTabela/celulas/tiposTabelaCelulas.ts +++ b/src/componentes/EliTabela/celulas/tiposTabelaCelulas.ts @@ -2,6 +2,8 @@ * Tipagem dos dados de entrada dos componentes de celulas */ +import type { LucideIcon } from "lucide-vue-next"; + export type TiposTabelaCelulas = { textoSimples: { texto: string; @@ -13,6 +15,32 @@ export type TiposTabelaCelulas = { }; numero: { numero: number; + /** Texto opcional exibido antes do número (ex.: "R$", "≈"). */ + prefixo?: string; + /** Texto opcional exibido depois do número (ex.: "kg", "%"). */ + sufixo?: string; + acao?: () => void; + }; + + tags: { + opcoes: { + /** Texto exibido dentro da tag. */ + rotulo: string; + /** Cor do chip (segue as cores do Vuetify, ex.: "primary", "success", "error"). */ + cor?: string; + /** Ícone (Lucide) opcional exibido antes do rótulo. */ + icone?: LucideIcon; + /** Ação opcional da tag. Quando existir, o chip vira clicável. */ + acao?: () => void; + }[]; + }; + + data: { + /** Valor em ISO 8601 (ex.: "2026-01-09T16:15:00Z"). */ + valor: string; + /** Define o formato de exibição. */ + formato: "data" | "data_hora" | "relativo"; + /** Ação opcional ao clicar no valor. */ acao?: () => void; }; }; diff --git a/src/index.ts b/src/index.ts index 14a0ec7..c6fc0fb 100644 --- a/src/index.ts +++ b/src/index.ts @@ -5,14 +5,20 @@ import { EliBotao } from "./componentes/botao"; import { EliBadge } from "./componentes/indicador"; import { EliCartao } from "./componentes/cartao"; import { EliTabela } from "./componentes/EliTabela"; -import { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora } from "./componentes/EliEntrada"; +import { + EliEntradaTexto, + EliEntradaNumero, + EliEntradaDataHora, + EliEntradaParagrafo, + EliEntradaSelecao, +} from "./componentes/EliEntrada"; export { EliOlaMundo }; export { EliBotao }; export { EliBadge }; export { EliCartao }; export { EliTabela }; -export { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora }; +export { EliEntradaTexto, EliEntradaNumero, EliEntradaDataHora, EliEntradaParagrafo, EliEntradaSelecao }; const EliVue: Plugin = { install(app: App) { @@ -24,6 +30,8 @@ const EliVue: Plugin = { app.component("EliEntradaTexto", EliEntradaTexto); app.component("EliEntradaNumero", EliEntradaNumero); app.component("EliEntradaDataHora", EliEntradaDataHora); + app.component("EliEntradaParagrafo", EliEntradaParagrafo); + app.component("EliEntradaSelecao", EliEntradaSelecao); }, }; diff --git a/src/playground/entradas.playground.vue b/src/playground/entradas.playground.vue index 03aa346..4789520 100644 --- a/src/playground/entradas.playground.vue +++ b/src/playground/entradas.playground.vue @@ -64,22 +64,81 @@ v-model:value: {{ numeroDecimal ?? "(null)" }} + + + +
+

Parágrafo

+ + + +
+ v-model:value: {{ paragrafo ?? "(null)" }} +
+
+ + + +
+

Seleção

+ + + +
+ v-model:value: {{ selecao ?? "(null)" }} +
+