@thibezer/ui-components-kit 1.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +92 -0
- package/LICENSE +21 -21
- package/README.md +150 -14
- package/dist/botao.cjs +1 -1
- package/dist/botao.js +1 -1
- package/dist/camadas.cjs +65 -65
- package/dist/camadas.js +762 -729
- package/dist/campo-texto.cjs +1 -1
- package/dist/campo-texto.js +1 -1
- package/dist/canvas.cjs +105 -146
- package/dist/canvas.js +5132 -1199
- package/dist/card.cjs +1 -1
- package/dist/card.js +1 -1
- package/dist/components/ui-botao/ui-botao.d.ts +15 -0
- package/dist/components/ui-camadas/camadas-persistencia.d.ts +4 -0
- package/dist/components/ui-camadas/ui-camadas.d.ts +10 -0
- package/dist/components/ui-campo-texto/ui-campo-texto.d.ts +5 -0
- package/dist/components/ui-canvas-cad/cad-estilos-externos.d.ts +16 -0
- package/dist/components/ui-canvas-cad/cad-eventos-canvas.d.ts +4 -0
- package/dist/components/ui-canvas-cad/cad-feicoes.d.ts +262 -0
- package/dist/components/ui-canvas-cad/cad-ferramentas-barra.d.ts +15 -0
- package/dist/components/ui-canvas-cad/cad-snap.d.ts +32 -0
- package/dist/components/ui-canvas-cad/cad-toolbar-painel.d.ts +1 -0
- package/dist/components/ui-canvas-cad/ui-canvas-cad.d.ts +143 -0
- package/dist/components/ui-lista-flutuante/lista-flutuante-posicionamento.d.ts +2 -0
- package/dist/components/ui-lista-flutuante/ui-lista-flutuante.d.ts +1 -0
- package/dist/components/ui-modal/modal-pilha.d.ts +3 -0
- package/dist/components/ui-modal/ui-modal.d.ts +19 -4
- package/dist/components/ui-seletor-mapa-base/ui-seletor-mapa-base.d.ts +3 -0
- package/dist/components/ui-tabela/tabela-atributos-sync.d.ts +3 -0
- package/dist/components/ui-tabela/tabela-corpo.d.ts +2 -0
- package/dist/components/ui-tabela/tabela-localizador.d.ts +8 -1
- package/dist/components/ui-tabela/tabela-orquestrador-dados.d.ts +4 -0
- package/dist/components/ui-tabela/tabela-renderizador.d.ts +1 -0
- package/dist/components/ui-tabela/tabela-selecao.d.ts +21 -6
- package/dist/components/ui-tabela/tipos.d.ts +6 -0
- package/dist/components/ui-tabela/ui-tabela.d.ts +56 -2
- package/dist/components/ui-tabela-propriedades/avaliador-expressao.d.ts +0 -5
- package/dist/components/ui-tabela-propriedades/propriedades-dom-utils.d.ts +17 -1
- package/dist/components/ui-tabela-propriedades/propriedades-flutuante.d.ts +2 -0
- package/dist/components/ui-tabela-propriedades/propriedades-gerenciador-valores.d.ts +10 -1
- package/dist/components/ui-tabela-propriedades/propriedades-render-arvore.d.ts +3 -1
- package/dist/components/ui-tabela-propriedades/ui-tabela-propriedades.d.ts +5 -1
- package/dist/components/ui-tooltip/ui-tooltip.d.ts +15 -0
- package/dist/core/alvo-digitavel.d.ts +1 -0
- package/dist/core/form-submissao.d.ts +16 -0
- package/dist/core/index.d.ts +1 -0
- package/dist/core/parts.d.ts +6 -0
- package/dist/core/rotulo.d.ts +6 -0
- package/dist/core/svg-seguro.d.ts +10 -0
- package/dist/core/ui-bus.d.ts +13 -2
- package/dist/core.cjs +1 -1
- package/dist/core.js +14 -12
- package/dist/custom-elements.json +32905 -0
- package/dist/data.cjs +1 -1
- package/dist/data.js +51 -46
- package/dist/feedback.cjs +1 -1
- package/dist/feedback.js +3 -3
- package/dist/form-submissao-C-SPRKgT.js +61 -0
- package/dist/form-submissao-DxKO5MHI.cjs +1 -0
- package/dist/forms.cjs +1 -1
- package/dist/forms.js +2 -2
- package/dist/gerencigeo-canvas/canvas_interacao.d.ts +18 -0
- package/dist/gerencigeo-canvas/feature_adapters.d.ts +35 -0
- package/dist/gerencigeo-canvas/feature_algoritmos.d.ts +45 -0
- package/dist/gerencigeo-canvas/feature_amostra.d.ts +4 -0
- package/dist/gerencigeo-canvas/feature_caixa.d.ts +19 -0
- package/dist/gerencigeo-canvas/feature_cluster.d.ts +61 -0
- package/dist/gerencigeo-canvas/feature_cursores.d.ts +17 -0
- package/dist/gerencigeo-canvas/feature_desenho.d.ts +53 -0
- package/dist/gerencigeo-canvas/feature_desenho_controle.d.ts +91 -0
- package/dist/gerencigeo-canvas/feature_edicao_ops.d.ts +19 -0
- package/dist/gerencigeo-canvas/feature_editor_vertices.d.ts +62 -0
- package/dist/gerencigeo-canvas/feature_formas.d.ts +7 -0
- package/dist/gerencigeo-canvas/feature_hud.d.ts +23 -0
- package/dist/gerencigeo-canvas/feature_indice.d.ts +36 -0
- package/dist/gerencigeo-canvas/feature_metricas.d.ts +16 -0
- package/dist/gerencigeo-canvas/feature_popup.d.ts +31 -0
- package/dist/gerencigeo-canvas/feature_selecao.d.ts +38 -0
- package/dist/gerencigeo-canvas/feature_simplificacao.d.ts +14 -0
- package/dist/gerencigeo-canvas/feature_snap.d.ts +25 -0
- package/dist/gerencigeo-canvas/feature_types.d.ts +86 -0
- package/dist/gerencigeo-canvas/feature_versoes.d.ts +19 -0
- package/dist/gerencigeo-canvas/index.d.ts +21 -0
- package/dist/gerencigeo-canvas/layer_hit_test.d.ts +30 -0
- package/dist/gerencigeo-canvas/layer_manager.d.ts +11 -3
- package/dist/gerencigeo-canvas/layer_pane_ops.d.ts +9 -0
- package/dist/gerencigeo-canvas/mapa_controller.d.ts +1 -0
- package/dist/gerencigeo-canvas/mapa_pontos_shapes.d.ts +24 -5
- package/dist/gerencigeo-canvas/renderers/feicoes_renderer.d.ts +89 -0
- package/dist/gerencigeo-canvas/renderers/vector_points_renderer.d.ts +1 -0
- package/dist/gerencigeo-canvas/renderers/vector_polygons_renderer.d.ts +2 -2
- package/dist/gerencigeo-canvas/types.d.ts +12 -0
- package/dist/gerencigeo-canvas/utils.d.ts +3 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +117 -112
- package/dist/leaflet-DcO7uRC-.cjs +1 -0
- package/dist/{leaflet-DkaFZYc5.js → leaflet-PPDKB6Dd.js} +37 -37
- package/dist/mapa.cjs +4 -4
- package/dist/mapa.js +2 -2
- package/dist/modal.cjs +1 -1
- package/dist/modal.js +1 -1
- package/dist/parts-CaoQiCfI.js +7 -0
- package/dist/parts-vQa2873h.cjs +1 -0
- package/dist/register.cjs +1 -1
- package/dist/register.js +12 -12
- package/dist/seletor-mapa-base.cjs +16 -16
- package/dist/seletor-mapa-base.js +111 -61
- package/dist/svg-seguro-BsbNQqpd.js +50 -0
- package/dist/svg-seguro-C76iLlAZ.cjs +1 -0
- package/dist/tabela.cjs +1 -1
- package/dist/tabela.js +41 -36
- package/dist/tipos-elementos.d.ts +1232 -0
- package/dist/tipos-react.d.ts +113 -0
- package/dist/tipos-vue.d.ts +1201 -0
- package/dist/tools.cjs +1 -1
- package/dist/tools.js +1 -1
- package/dist/ui-badge-BxT-sDmV.cjs +28 -0
- package/dist/ui-badge-C0eKBI8E.js +183 -0
- package/dist/ui-botao-OGJV6Vfk.js +165 -0
- package/dist/ui-botao-psS1juof.cjs +12 -0
- package/dist/ui-campo-texto-Cnn2UAkS.cjs +16 -0
- package/dist/{ui-campo-texto-B_JF6POq.js → ui-campo-texto-Uu2dJE_0.js} +81 -63
- package/dist/{ui-card-Bhm6k91e.cjs → ui-card-B86lJXTP.cjs} +7 -7
- package/dist/{ui-card-BJ8SmvVf.js → ui-card-C_o5_0cB.js} +14 -14
- package/dist/ui-kit.css +1 -1
- package/dist/ui-modal-CvGFGh1h.cjs +18 -0
- package/dist/ui-modal-DBOtSTbR.js +238 -0
- package/dist/{ui-paleta-ferramentas-Bpp4XBVg.js → ui-paleta-ferramentas-CEZYcN4J.js} +18 -27
- package/dist/{ui-paleta-ferramentas-B6dJ0O6K.cjs → ui-paleta-ferramentas-Dbj1kBS9.cjs} +6 -6
- package/dist/ui-segmented-D6b6zxVs.cjs +19 -0
- package/dist/{ui-segmented-C8wuycjJ.js → ui-segmented-wUraId2e.js} +68 -67
- package/dist/ui-skeleton-DI4_9WOX.js +428 -0
- package/dist/ui-skeleton-elhKIh2B.cjs +33 -0
- package/dist/{ui-switch-CO9MoS8x.js → ui-switch-BcOqOkiV.js} +92 -62
- package/dist/ui-switch-D7iPKDj-.cjs +53 -0
- package/dist/ui-tabela-propriedades-BBr5sqki.cjs +145 -0
- package/dist/ui-tabela-propriedades-Boy7I5yW.js +2412 -0
- package/dist/{ui-toast-CwUmiqyG.js → ui-toast-Bp_NlM5G.js} +51 -51
- package/dist/ui-toast-DGTZKne5.cjs +20 -0
- package/dist/zero-js-triggers-C_KrvFOQ.js +244 -0
- package/dist/zero-js-triggers-C_gtaojZ.cjs +1 -0
- package/package.json +27 -7
- package/dist/leaflet-Cw6tqYFh.cjs +0 -1
- package/dist/ui-badge-92yelKls.js +0 -183
- package/dist/ui-badge-B95jSECC.cjs +0 -28
- package/dist/ui-botao-BShEouvi.js +0 -124
- package/dist/ui-botao-DF1yuUUD.cjs +0 -12
- package/dist/ui-campo-texto-BCh5HyCM.cjs +0 -16
- package/dist/ui-modal-Bi4isGYh.cjs +0 -18
- package/dist/ui-modal-DV-pw2x1.js +0 -194
- package/dist/ui-segmented-NC5cBXLh.cjs +0 -19
- package/dist/ui-skeleton-B3xQyn0Z.js +0 -396
- package/dist/ui-skeleton-D42oQufF.cjs +0 -33
- package/dist/ui-switch-C6o4yZUF.cjs +0 -53
- package/dist/ui-tabela-propriedades-7yJ9g7ti.cjs +0 -145
- package/dist/ui-tabela-propriedades-D-XKNVwK.js +0 -2078
- package/dist/ui-toast-CQBqvUm3.cjs +0 -20
- package/dist/zero-js-triggers-DdESy0tk.js +0 -205
- package/dist/zero-js-triggers-QGD7FOTv.cjs +0 -1
|
@@ -2,10 +2,11 @@ var _ = Object.defineProperty;
|
|
|
2
2
|
var k = (n, i, t) => i in n ? _(n, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : n[i] = t;
|
|
3
3
|
var a = (n, i, t) => k(n, typeof i != "symbol" ? i + "" : i, t);
|
|
4
4
|
import { L as d } from "./listener-bag-DQgv7OON.js";
|
|
5
|
+
import { a as y } from "./parts-CaoQiCfI.js";
|
|
5
6
|
import { d as h } from "./ssr-safe-5cWfJP-s.js";
|
|
6
|
-
import { F as u } from "./ui-campo-texto-
|
|
7
|
+
import { F as u, r as w } from "./ui-campo-texto-Uu2dJE_0.js";
|
|
7
8
|
import { g as m, o as p, c as f } from "./form-validacao-BIOXxt-1.js";
|
|
8
|
-
class
|
|
9
|
+
class A {
|
|
9
10
|
constructor(i, t, e) {
|
|
10
11
|
a(this, "scrollHandler");
|
|
11
12
|
a(this, "resizeHandler");
|
|
@@ -15,19 +16,27 @@ class y {
|
|
|
15
16
|
return;
|
|
16
17
|
}
|
|
17
18
|
const i = this.button.getBoundingClientRect();
|
|
18
|
-
this.content.style.top = `${Math.round(i.bottom + 2)}px`, this.content.style.left = `${Math.round(i.left)}px`, this.content.style.minWidth = `${Math.round(Math.max(i.width, 120))}px
|
|
19
|
+
this.content.style.top = `${Math.round(i.bottom + 2)}px`, this.content.style.left = `${Math.round(i.left)}px`, this.content.style.minWidth = `${Math.round(Math.max(i.width, 120))}px`, this.ajustarAoViewport(i);
|
|
19
20
|
});
|
|
20
21
|
this.host = i, this.button = t, this.content = e;
|
|
21
22
|
}
|
|
22
23
|
isMobileOrBottomSheet() {
|
|
23
24
|
return typeof window > "u" ? !1 : window.innerWidth <= 640 || this.host.hasAttribute("bottom-sheet") || this.host.hasAttribute("modo-mobile");
|
|
24
25
|
}
|
|
26
|
+
/** Com a lista já visível (medida real): abre para cima se faltar espaço embaixo e não deixa sair pela lateral. */
|
|
27
|
+
ajustarAoViewport(i) {
|
|
28
|
+
const t = this.content.offsetHeight, e = this.content.offsetWidth;
|
|
29
|
+
if (t <= 0 || typeof window > "u") return;
|
|
30
|
+
const s = 8;
|
|
31
|
+
i.bottom + 2 + t > window.innerHeight - s && i.top - 2 - t >= s && (this.content.style.top = `${Math.round(i.top - 2 - t)}px`), i.left + e > window.innerWidth - s && (this.content.style.left = `${Math.max(s, Math.round(window.innerWidth - s - e))}px`);
|
|
32
|
+
}
|
|
25
33
|
ativarAcompanhamento(i) {
|
|
26
34
|
if (this.scrollHandler = i, this.resizeHandler = this.posicionar, window.addEventListener("scroll", this.scrollHandler, { capture: !0, passive: !0 }), window.addEventListener("resize", this.resizeHandler, { passive: !0 }), typeof this.content.showPopover == "function")
|
|
27
35
|
try {
|
|
28
36
|
this.content.showPopover();
|
|
29
37
|
} catch {
|
|
30
38
|
}
|
|
39
|
+
this.posicionar();
|
|
31
40
|
}
|
|
32
41
|
desativarAcompanhamento() {
|
|
33
42
|
if (this.scrollHandler && (window.removeEventListener("scroll", this.scrollHandler, { capture: !0 }), this.scrollHandler = void 0), this.resizeHandler && (window.removeEventListener("resize", this.resizeHandler), this.resizeHandler = void 0), typeof this.content.hidePopover == "function")
|
|
@@ -37,14 +46,17 @@ class y {
|
|
|
37
46
|
}
|
|
38
47
|
}
|
|
39
48
|
}
|
|
40
|
-
class
|
|
49
|
+
class E {
|
|
41
50
|
constructor(i) {
|
|
42
51
|
a(this, "focusedIndex", -1);
|
|
43
52
|
this.listElement = i;
|
|
44
53
|
}
|
|
45
54
|
focarPrimeiroItem() {
|
|
46
55
|
const i = Array.from(this.listElement.querySelectorAll(".ui-lista-flutuante__item"));
|
|
47
|
-
i.length > 0
|
|
56
|
+
if (i.length > 0) {
|
|
57
|
+
const t = i.findIndex((e) => e.classList.contains("ui-lista-flutuante__item--selecionado"));
|
|
58
|
+
this.focusedIndex = Math.max(0, t), i[this.focusedIndex].focus();
|
|
59
|
+
}
|
|
48
60
|
}
|
|
49
61
|
resetarFoco() {
|
|
50
62
|
this.focusedIndex = -1;
|
|
@@ -54,10 +66,18 @@ class w {
|
|
|
54
66
|
t.length !== 0 && (this.focusedIndex += i, this.focusedIndex < 0 && (this.focusedIndex = t.length - 1), this.focusedIndex >= t.length && (this.focusedIndex = 0), t[this.focusedIndex].focus());
|
|
55
67
|
}
|
|
56
68
|
tratarKeydownLista(i, t, e, s, r) {
|
|
57
|
-
|
|
69
|
+
if (i.key === "ArrowDown")
|
|
70
|
+
i.preventDefault(), this.moverFoco(1);
|
|
71
|
+
else if (i.key === "ArrowUp")
|
|
72
|
+
i.preventDefault(), this.moverFoco(-1);
|
|
73
|
+
else if (i.key === "Home" || i.key === "End") {
|
|
74
|
+
i.preventDefault();
|
|
75
|
+
const o = i.key === "End";
|
|
76
|
+
this.focusedIndex = o ? -1 : 0, o ? this.moverFoco(-1) : this.moverFoco(0);
|
|
77
|
+
} else i.key === "Tab" ? s() : i.key === "Enter" || i.key === " " ? (i.preventDefault(), this.focusedIndex >= 0 && this.focusedIndex < t.length && e(t[this.focusedIndex])) : i.key === "Escape" && (i.preventDefault(), s(), r.focus());
|
|
58
78
|
}
|
|
59
79
|
}
|
|
60
|
-
const
|
|
80
|
+
const S = ':host{display:inline-block;position:relative;width:100%;box-sizing:border-box;font-family:var(--ui-fonte-base, "Inter", sans-serif)}:host([inline]){width:auto}.ui-lista-flutuante__container{display:flex;flex-direction:column;width:100%;position:relative}.ui-lista-flutuante__label{font-family:var(--ui-fonte-base, "Inter", sans-serif);font-size:var(--ui-tamanho-corpo-sm, 13px);font-weight:var(--ui-peso-medio, 500);color:var(--ui-cor-texto, #e1e1e6);margin-bottom:4px;-webkit-user-select:none;user-select:none;flex-shrink:0}.ui-lista-flutuante__asterisco{color:var(--ui-cor-texto-erro, #ff5555);margin-left:2px}.ui-lista-flutuante__gatilho{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;height:var(--ui-campo-altura, 100%);min-height:var(--ui-campo-altura, var(--ui-altura-minima, 15px));padding:0 8px;background-color:var(--ui-cor-fundo-elevado, #1a1a1e);color:var(--ui-cor-texto, #e1e1e6);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));border-radius:var(--ui-raio-borda, 6px);font-family:var(--ui-fonte-base, "Inter", sans-serif);font-size:clamp(11px,.85rem,13px);line-height:1;cursor:pointer;box-sizing:border-box;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:border-color .15s ease,background-color .15s ease}.ui-lista-flutuante__gatilho:hover:not(:disabled){border-color:var(--ui-cor-primaria, #00E08A)}.ui-lista-flutuante__gatilho:disabled{opacity:.5;cursor:not-allowed}.ui-lista-flutuante__texto{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;text-align:left}.ui-lista-flutuante__seta{font-size:10px;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease;color:var(--ui-cor-texto-secundario, #888899);flex-shrink:0;shape-rendering:geometricPrecision}:host([aberta]) .ui-lista-flutuante__seta{transform:rotate(180deg)}.ui-lista-flutuante__backdrop{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;z-index:calc(var(--ui-z-popover, 1050) - 1)}:host([aberta]) .ui-lista-flutuante__backdrop{display:block}:host(:not([aberta])) .ui-lista-flutuante__conteudo{display:none!important}:host([aberta]) .ui-lista-flutuante__conteudo{display:block}.ui-lista-flutuante__conteudo{position:fixed;margin:0;padding:4px;list-style:none;background-color:var(--ui-cor-fundo-menu, #18181c);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .14));border-radius:var(--ui-raio-borda, 6px);box-shadow:var(--ui-sombra-lg, 0 8px 28px rgba(0, 0, 0, .55));max-height:220px;overflow-y:auto;z-index:var(--ui-z-popover, 1050);box-sizing:border-box;inset:auto}.ui-lista-flutuante__sheet-header{display:none;width:100%;margin-bottom:8px}.ui-lista-flutuante__handle{width:36px;height:4px;border-radius:2px;background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 25%,transparent);margin:2px auto 8px}.ui-lista-flutuante__sheet-title-bar{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 6px 8px;border-bottom:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .08));margin-bottom:6px}.ui-lista-flutuante__sheet-titulo{font-size:13px;font-weight:600;color:var(--ui-cor-primaria, #00E08A);letter-spacing:.3px;text-transform:uppercase}.ui-lista-flutuante__sheet-close{background:transparent;border:none;color:var(--ui-cor-texto-secundario, #888899);font-size:14px;cursor:pointer;padding:4px 8px;border-radius:var(--ui-raio-sm, 4px);display:flex;align-items:center;justify-content:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:color .15s,background-color .15s}.ui-lista-flutuante__sheet-close:hover{color:#fff;background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 8%,transparent)}.ui-lista-flutuante__item{padding:6px 10px;font-family:var(--ui-fonte-base, "Inter", sans-serif);font-size:12px;line-height:1.2;color:var(--ui-cor-texto, #e1e1e6);border-radius:var(--ui-raio-sm, 4px);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color .12s ease,color .12s ease;-webkit-user-select:none;user-select:none}.ui-lista-flutuante__item:hover{background-color:var(--ui-cor-hover-menu, rgba(255, 255, 255, .08))}.ui-lista-flutuante__item--selecionado{background-color:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 15%,transparent);color:var(--ui-cor-primaria, #00E08A);font-weight:600}.ui-lista-flutuante__item--selecionado:after{content:"✓";font-size:11px;color:var(--ui-cor-primaria, #00E08A)}@media (max-width: 640px){.ui-lista-flutuante__gatilho{min-height:max(var(--ui-campo-altura, 38px),38px);font-size:15px}:host([aberta]) .ui-lista-flutuante__backdrop{background-color:#00000059;-webkit-backdrop-filter:none;backdrop-filter:none}.ui-lista-flutuante__conteudo{position:fixed!important;bottom:0!important;top:auto!important;left:0!important;width:100vw!important;max-width:100vw!important;min-width:100vw!important;max-height:70vh!important;max-height:70dvh!important;border-radius:var(--ui-raio-xl, 16px) var(--ui-raio-xl, 16px) 0 0!important;border-bottom:none!important;padding:10px 16px calc(24px + env(safe-area-inset-bottom,0px)) 16px!important;box-shadow:0 -8px 32px #000000b3!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;animation:ui-bottom-sheet-slide .22s cubic-bezier(.4,0,.2,1)}.ui-lista-flutuante__sheet-header{display:flex!important;flex-direction:column!important}.ui-lista-flutuante__sheet-close{min-width:44px;min-height:44px;font-size:18px}.ui-lista-flutuante__item{padding:12px 14px!important;font-size:15px!important;margin-bottom:3px}}:host([bottom-sheet][aberta]) .ui-lista-flutuante__backdrop,:host([modo-mobile][aberta]) .ui-lista-flutuante__backdrop{background-color:#00000059;-webkit-backdrop-filter:none;backdrop-filter:none}:host([bottom-sheet]) .ui-lista-flutuante__conteudo,:host([modo-mobile]) .ui-lista-flutuante__conteudo{position:fixed!important;bottom:0!important;top:auto!important;left:0!important;width:100vw!important;max-width:100vw!important;min-width:100vw!important;max-height:70vh!important;max-height:70dvh!important;border-radius:var(--ui-raio-xl, 16px) var(--ui-raio-xl, 16px) 0 0!important;border-bottom:none!important;padding:10px 16px calc(24px + env(safe-area-inset-bottom,0px)) 16px!important;box-shadow:0 -8px 32px #000000b3!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;animation:ui-bottom-sheet-slide .22s cubic-bezier(.4,0,.2,1)}:host([bottom-sheet]) .ui-lista-flutuante__sheet-header,:host([modo-mobile]) .ui-lista-flutuante__sheet-header{display:flex!important;flex-direction:column!important}:host([bottom-sheet]) .ui-lista-flutuante__sheet-close,:host([modo-mobile]) .ui-lista-flutuante__sheet-close{min-width:44px;min-height:44px;font-size:18px}:host([bottom-sheet]) .ui-lista-flutuante__item,:host([modo-mobile]) .ui-lista-flutuante__item{padding:12px 14px!important;font-size:15px!important;margin-bottom:3px}@keyframes ui-bottom-sheet-slide{0%{transform:translateY(100%)}to{transform:translateY(0)}}', L = [
|
|
61
81
|
"aberta",
|
|
62
82
|
"texto-padrao",
|
|
63
83
|
"value",
|
|
@@ -78,17 +98,17 @@ const A = ':host{display:inline-block;position:relative;width:100%;box-sizing:bo
|
|
|
78
98
|
"mensagem-validacao",
|
|
79
99
|
"aria-label"
|
|
80
100
|
];
|
|
81
|
-
function
|
|
101
|
+
function C() {
|
|
82
102
|
return `
|
|
83
|
-
<style>${
|
|
103
|
+
<style>${S}</style>
|
|
84
104
|
<div class="ui-lista-flutuante__container">
|
|
85
|
-
<label class="ui-lista-flutuante__label" style="display: none;"></label>
|
|
105
|
+
<label class="ui-lista-flutuante__label" part="rotulo" style="display: none;"></label>
|
|
86
106
|
<div class="ui-lista-flutuante__backdrop"></div>
|
|
87
|
-
<button class="ui-lista-flutuante__gatilho" aria-haspopup="listbox" aria-expanded="false" type="button">
|
|
88
|
-
<span class="ui-lista-flutuante__texto"></span>
|
|
89
|
-
<span class="ui-lista-flutuante__seta">▼</span>
|
|
107
|
+
<button class="ui-lista-flutuante__gatilho" part="campo" aria-haspopup="listbox" aria-expanded="false" type="button">
|
|
108
|
+
<span class="ui-lista-flutuante__texto" part="valor"></span>
|
|
109
|
+
<span class="ui-lista-flutuante__seta" part="seta">▼</span>
|
|
90
110
|
</button>
|
|
91
|
-
<div class="ui-lista-flutuante__conteudo" role="listbox" popover="manual">
|
|
111
|
+
<div class="ui-lista-flutuante__conteudo" part="lista" role="listbox" popover="manual">
|
|
92
112
|
<div class="ui-lista-flutuante__sheet-header">
|
|
93
113
|
<div class="ui-lista-flutuante__handle"></div>
|
|
94
114
|
<div class="ui-lista-flutuante__sheet-title-bar">
|
|
@@ -104,12 +124,13 @@ function S() {
|
|
|
104
124
|
function b(n, i, t) {
|
|
105
125
|
n.innerHTML = "", i.forEach((e) => {
|
|
106
126
|
const s = document.createElement("li"), r = String(e.id) === String(t);
|
|
107
|
-
s.className = `ui-lista-flutuante__item ${r ? "ui-lista-flutuante__item--selecionado" : ""}`, s.setAttribute("data-id", e.id), s.textContent = e.label, s.role = "option", s.tabIndex = -1, r && s.setAttribute("aria-selected", "true"), n.appendChild(s);
|
|
127
|
+
s.className = `ui-lista-flutuante__item ${r ? "ui-lista-flutuante__item--selecionado" : ""}`, s.setAttribute("data-id", e.id), s.textContent = e.label, s.role = "option", s.tabIndex = -1, s.setAttribute("part", r ? "opcao opcao-selecionada" : "opcao"), r && s.setAttribute("aria-selected", "true"), n.appendChild(s);
|
|
108
128
|
});
|
|
109
129
|
}
|
|
110
|
-
function
|
|
130
|
+
function z(n, i) {
|
|
111
131
|
n.querySelectorAll(".ui-lista-flutuante__item").forEach((e) => {
|
|
112
|
-
e.getAttribute("data-id")
|
|
132
|
+
const s = e.getAttribute("data-id");
|
|
133
|
+
y(e, "opcao-selecionada", s === String(i)), s === String(i) ? (e.classList.add("ui-lista-flutuante__item--selecionado"), e.setAttribute("aria-selected", "true")) : (e.classList.remove("ui-lista-flutuante__item--selecionado"), e.removeAttribute("aria-selected"));
|
|
113
134
|
});
|
|
114
135
|
}
|
|
115
136
|
class g extends u {
|
|
@@ -128,6 +149,7 @@ class g extends u {
|
|
|
128
149
|
a(this, "_itens", []);
|
|
129
150
|
a(this, "_value", "");
|
|
130
151
|
a(this, "_defaultValue", "");
|
|
152
|
+
a(this, "_defaultCapturado", !1);
|
|
131
153
|
a(this, "observer");
|
|
132
154
|
a(this, "posicionamento");
|
|
133
155
|
a(this, "teclado");
|
|
@@ -135,7 +157,13 @@ class g extends u {
|
|
|
135
157
|
t.stopPropagation(), !this.disabled && (this.hasAttribute("aberta") ? this.fechar() : this.abrir());
|
|
136
158
|
});
|
|
137
159
|
a(this, "handleKeyDown", (t) => {
|
|
138
|
-
|
|
160
|
+
if (!this.disabled) {
|
|
161
|
+
if (t.key === "Escape" && this.hasAttribute("aberta")) {
|
|
162
|
+
t.preventDefault(), this.fechar();
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
(t.key === "Enter" || t.key === " " || t.key === "ArrowDown" || t.key === "ArrowUp") && (t.preventDefault(), this.hasAttribute("aberta") ? this.teclado.focarPrimeiroItem() : this.abrir());
|
|
166
|
+
}
|
|
139
167
|
});
|
|
140
168
|
a(this, "handleListKeyDown", (t) => {
|
|
141
169
|
this.hasAttribute("aberta") && this.teclado.tratarKeydownLista(
|
|
@@ -170,22 +198,22 @@ class g extends u {
|
|
|
170
198
|
r && this.selecionarItem(r);
|
|
171
199
|
});
|
|
172
200
|
const t = this.attachShadow({ mode: "open" });
|
|
173
|
-
t.innerHTML =
|
|
201
|
+
t.innerHTML = C(), this.labelElement = t.querySelector(".ui-lista-flutuante__label"), this.button = t.querySelector(".ui-lista-flutuante__gatilho"), this.content = t.querySelector(".ui-lista-flutuante__conteudo"), this.listElement = t.querySelector(".ui-lista-flutuante__lista"), this.textoElement = t.querySelector(".ui-lista-flutuante__texto"), this.backdropElement = t.querySelector(".ui-lista-flutuante__backdrop"), this.sheetTituloElement = t.querySelector(".ui-lista-flutuante__sheet-titulo"), this.sheetCloseButton = t.querySelector(".ui-lista-flutuante__sheet-close");
|
|
174
202
|
const e = m("ui-select");
|
|
175
203
|
this.idsAcessibilidade = {
|
|
176
204
|
label: `${e}-label`,
|
|
177
205
|
gatilho: `${e}-gatilho`,
|
|
178
206
|
texto: `${e}-texto`,
|
|
179
207
|
lista: `${e}-lista`
|
|
180
|
-
}, this.labelElement.id = this.idsAcessibilidade.label, this.button.id = this.idsAcessibilidade.gatilho, this.textoElement.id = this.idsAcessibilidade.texto, this.content.id = this.idsAcessibilidade.lista, this.button.setAttribute("aria-controls", this.idsAcessibilidade.lista), this.posicionamento = new
|
|
208
|
+
}, this.labelElement.id = this.idsAcessibilidade.label, this.button.id = this.idsAcessibilidade.gatilho, this.textoElement.id = this.idsAcessibilidade.texto, this.content.id = this.idsAcessibilidade.lista, this.button.setAttribute("aria-controls", this.idsAcessibilidade.lista), this.posicionamento = new A(this, this.button, this.content), this.teclado = new E(this.listElement);
|
|
181
209
|
}
|
|
182
210
|
static get observedAttributes() {
|
|
183
|
-
return
|
|
211
|
+
return L;
|
|
184
212
|
}
|
|
185
213
|
connectedCallback() {
|
|
186
214
|
this.listeners.cleanup(), this.listeners.add(this.button, "click", this.toggleLista), this.listeners.add(this.button, "keydown", this.handleKeyDown), this.listeners.add(this.content, "keydown", this.handleListKeyDown), this.listeners.add(this.backdropElement, "click", this.fechar), this.listeners.add(this.listElement, "click", this.handleListClick), this.listeners.add(this.sheetCloseButton, "click", (t) => {
|
|
187
215
|
t.stopPropagation(), this.fechar();
|
|
188
|
-
}), this.listeners.add(document, "click", this.handleClickFora), this.listeners.add(this.labelElement, "click", this.focarGatilho), this.listeners.add(this, "click", this.handleHostClick), this._defaultValue = this.getAttribute("value") || "", this.carregarItensFilhos(), this.syncState(), this.observer = new MutationObserver(() => this.carregarItensFilhos()), this.observer.observe(this, { childList: !0, subtree: !0 });
|
|
216
|
+
}), this.listeners.add(document, "click", this.handleClickFora), this.listeners.add(this.labelElement, "click", this.focarGatilho), this.listeners.add(this, "click", this.handleHostClick), this._defaultCapturado || (this._defaultValue = this.getAttribute("value") || "", this._defaultCapturado = !0), this.carregarItensFilhos(), this.syncState(), this.observer = new MutationObserver(() => this.carregarItensFilhos()), this.observer.observe(this, { childList: !0, subtree: !0 });
|
|
189
217
|
}
|
|
190
218
|
carregarItensFilhos() {
|
|
191
219
|
const t = Array.from(this.querySelectorAll('option, ui-opcao, [role="option"], [data-opcao], [data-value]:not(input):not(select)'));
|
|
@@ -208,7 +236,7 @@ class g extends u {
|
|
|
208
236
|
return this._value;
|
|
209
237
|
}
|
|
210
238
|
set value(t) {
|
|
211
|
-
this._value = t, this.setAttribute("value", t), this.internals.setFormValue(t), this.syncLabel(),
|
|
239
|
+
this._value = t, this.setAttribute("value", t), this.internals.setFormValue(t), this.syncLabel(), z(this.listElement, this._value), this.atualizarValidade();
|
|
212
240
|
}
|
|
213
241
|
get label() {
|
|
214
242
|
return this.getAttribute("label") || this.getAttribute("rotulo") || "";
|
|
@@ -270,7 +298,7 @@ class g extends u {
|
|
|
270
298
|
syncLabel() {
|
|
271
299
|
const t = this.getAttribute("label") || this.getAttribute("rotulo");
|
|
272
300
|
if (t)
|
|
273
|
-
this.
|
|
301
|
+
w(this.labelElement, t, this.required, "ui-lista-flutuante__asterisco"), this.labelElement.style.display = "block", this.sheetTituloElement.textContent = t, this.button.setAttribute("aria-labelledby", `${this.idsAcessibilidade.label} ${this.idsAcessibilidade.texto}`), this.content.setAttribute("aria-labelledby", this.idsAcessibilidade.label), this.button.removeAttribute("aria-label"), this.content.removeAttribute("aria-label");
|
|
274
302
|
else {
|
|
275
303
|
this.labelElement.style.display = "none", this.sincronizarRotuloExterno();
|
|
276
304
|
const s = this.getAttribute("texto-padrao") || this.getAttribute("placeholder") || "Opções";
|
|
@@ -295,31 +323,33 @@ class g extends u {
|
|
|
295
323
|
t && this.style.setProperty("--ui-campo-altura", isNaN(Number(t)) ? t : `${t}px`), this.hasAttribute("value") && (this._value = this.getAttribute("value") || "", this.internals.setFormValue(this._value)), this.syncLabel(), this.atualizarValidade();
|
|
296
324
|
}
|
|
297
325
|
selecionarItem(t) {
|
|
298
|
-
|
|
326
|
+
var r;
|
|
327
|
+
const e = (r = this.shadowRoot) == null ? void 0 : r.activeElement, s = !!e && this.content.contains(e);
|
|
328
|
+
this.value = t.id, this.fechar(), s && this.button.focus(), this.dispatchEvent(
|
|
299
329
|
new CustomEvent("ui-selecionar", {
|
|
300
330
|
detail: t,
|
|
301
331
|
bubbles: !0,
|
|
302
332
|
composed: !0
|
|
303
333
|
})
|
|
304
334
|
), this.dispatchEvent(
|
|
305
|
-
new Event("
|
|
335
|
+
new Event("input", {
|
|
306
336
|
bubbles: !0,
|
|
307
337
|
composed: !0
|
|
308
338
|
})
|
|
309
339
|
), this.dispatchEvent(
|
|
310
|
-
new Event("
|
|
340
|
+
new Event("change", {
|
|
311
341
|
bubbles: !0,
|
|
312
342
|
composed: !0
|
|
313
343
|
})
|
|
314
344
|
);
|
|
315
345
|
}
|
|
316
346
|
}
|
|
317
|
-
class
|
|
347
|
+
class I extends g {
|
|
318
348
|
}
|
|
319
349
|
h("ui-lista-flutuante", g);
|
|
320
|
-
h("ui-select",
|
|
321
|
-
const
|
|
322
|
-
class
|
|
350
|
+
h("ui-select", I);
|
|
351
|
+
const q = ':host{display:inline-flex;align-items:center;box-sizing:border-box;font-family:var(--ui-fonte-base, "Inter", sans-serif);vertical-align:middle}.ui-checkbox{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1;outline:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.ui-checkbox--disabled{opacity:.5;cursor:not-allowed!important;pointer-events:none}.ui-checkbox__box{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;min-width:16px;min-height:16px;background-color:var(--ui-cor-fundo-elevado, #1a1a1e);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .16));border-radius:var(--ui-raio-sm, 4px);box-sizing:border-box;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease;flex-shrink:0}.ui-checkbox:focus-visible .ui-checkbox__box,.ui-checkbox--foco .ui-checkbox__box{border-color:var(--ui-cor-primaria, #00E08A);box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 25%,transparent)}.ui-checkbox--checked .ui-checkbox__box,.ui-checkbox--indeterminate .ui-checkbox__box{background-color:var(--ui-cor-primaria, #00E08A);border-color:var(--ui-cor-primaria, #00E08A);color:var(--ui-cor-texto-sobre-primaria, #000000)}.ui-checkbox__mark{width:12px;height:12px;display:flex;align-items:center;justify-content:center;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s ease;transform:scale(0);opacity:0}.ui-checkbox--checked .ui-checkbox__mark,.ui-checkbox--indeterminate .ui-checkbox__mark{transform:scale(1);opacity:1}.ui-checkbox__mark svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;shape-rendering:geometricPrecision}.ui-checkbox__label{display:inline-flex;align-items:center;font-size:clamp(11px,.85rem,14px);color:var(--ui-cor-texto, #e1e1e6);line-height:1}.ui-checkbox--label-esquerda{flex-direction:row-reverse}@media (max-width: 640px){.ui-checkbox{min-height:40px;padding:4px 0}.ui-checkbox__box{width:20px;height:20px;min-width:20px;min-height:20px}.ui-checkbox__mark{width:14px;height:14px}.ui-checkbox__label{font-size:14px}}';
|
|
352
|
+
class V extends u {
|
|
323
353
|
constructor() {
|
|
324
354
|
super();
|
|
325
355
|
a(this, "containerElement");
|
|
@@ -342,12 +372,12 @@ class q extends u {
|
|
|
342
372
|
});
|
|
343
373
|
const t = this.attachShadow({ mode: "open" });
|
|
344
374
|
t.innerHTML = `
|
|
345
|
-
<style>${
|
|
346
|
-
<div class="ui-checkbox" tabindex="0" role="checkbox" aria-checked="false">
|
|
347
|
-
<span class="ui-checkbox__box">
|
|
348
|
-
<span class="ui-checkbox__mark"></span>
|
|
375
|
+
<style>${q}</style>
|
|
376
|
+
<div class="ui-checkbox" part="base" tabindex="0" role="checkbox" aria-checked="false">
|
|
377
|
+
<span class="ui-checkbox__box" part="controle">
|
|
378
|
+
<span class="ui-checkbox__mark" part="indicador"></span>
|
|
349
379
|
</span>
|
|
350
|
-
<span class="ui-checkbox__label" style="display: none;"></span>
|
|
380
|
+
<span class="ui-checkbox__label" part="rotulo" style="display: none;"></span>
|
|
351
381
|
</div>
|
|
352
382
|
`, this.containerElement = t.querySelector(".ui-checkbox"), this.markElement = t.querySelector(".ui-checkbox__mark"), this.labelElement = t.querySelector(".ui-checkbox__label");
|
|
353
383
|
}
|
|
@@ -473,8 +503,8 @@ class q extends u {
|
|
|
473
503
|
typeof t == "string" ? this.marcado = t === (this.getAttribute("value") || "on") : typeof t == "boolean" && (this.marcado = t), this.syncState();
|
|
474
504
|
}
|
|
475
505
|
}
|
|
476
|
-
h("ui-checkbox",
|
|
477
|
-
const
|
|
506
|
+
h("ui-checkbox", V);
|
|
507
|
+
const D = ':host{display:inline-flex;align-items:center;box-sizing:border-box;font-family:var(--ui-fonte-base, "Inter", sans-serif);vertical-align:middle}.ui-radio{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1;outline:none}.ui-radio--disabled{opacity:.5;cursor:not-allowed!important;pointer-events:none}.ui-radio__circle{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;min-width:16px;min-height:16px;background-color:var(--ui-cor-fundo-elevado, #1a1a1e);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .16));border-radius:50%;box-sizing:border-box;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease;flex-shrink:0}.ui-radio:focus-visible .ui-radio__circle,.ui-radio--foco .ui-radio__circle{border-color:var(--ui-cor-primaria, #00E08A);box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 25%,transparent)}.ui-radio--checked .ui-radio__circle{border-color:var(--ui-cor-primaria, #00E08A)}.ui-radio__dot{width:8px;height:8px;border-radius:50%;background-color:var(--ui-cor-primaria, #00E08A);transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s ease;transform:scale(0);opacity:0}.ui-radio--checked .ui-radio__dot{transform:scale(1);opacity:1}.ui-radio__label{display:inline-flex;align-items:center;font-size:clamp(11px,.85rem,14px);color:var(--ui-cor-texto, #e1e1e6);line-height:1}.ui-radio--label-esquerda{flex-direction:row-reverse}';
|
|
478
508
|
class c {
|
|
479
509
|
static getScopeNode(i) {
|
|
480
510
|
return i.closest("form") || i.getRootNode() || document;
|
|
@@ -524,7 +554,7 @@ class c {
|
|
|
524
554
|
}
|
|
525
555
|
}
|
|
526
556
|
a(c, "registry", /* @__PURE__ */ new WeakMap());
|
|
527
|
-
class
|
|
557
|
+
class M extends u {
|
|
528
558
|
constructor() {
|
|
529
559
|
super();
|
|
530
560
|
a(this, "containerElement");
|
|
@@ -544,12 +574,12 @@ class V extends u {
|
|
|
544
574
|
});
|
|
545
575
|
const t = this.attachShadow({ mode: "open" });
|
|
546
576
|
t.innerHTML = `
|
|
547
|
-
<style>${
|
|
548
|
-
<div class="ui-radio" tabindex="0" role="radio" aria-checked="false">
|
|
549
|
-
<span class="ui-radio__circle">
|
|
550
|
-
<span class="ui-radio__dot"></span>
|
|
577
|
+
<style>${D}</style>
|
|
578
|
+
<div class="ui-radio" part="base" tabindex="0" role="radio" aria-checked="false">
|
|
579
|
+
<span class="ui-radio__circle" part="controle">
|
|
580
|
+
<span class="ui-radio__dot" part="indicador"></span>
|
|
551
581
|
</span>
|
|
552
|
-
<span class="ui-radio__label" style="display: none;"></span>
|
|
582
|
+
<span class="ui-radio__label" part="rotulo" style="display: none;"></span>
|
|
553
583
|
</div>
|
|
554
584
|
`, this.containerElement = t.querySelector(".ui-radio"), this.labelElement = t.querySelector(".ui-radio__label");
|
|
555
585
|
}
|
|
@@ -656,8 +686,8 @@ class V extends u {
|
|
|
656
686
|
typeof t == "string" ? this.marcado = t === (this.getAttribute("value") || "on") : typeof t == "boolean" && (this.marcado = t), this.syncState();
|
|
657
687
|
}
|
|
658
688
|
}
|
|
659
|
-
h("ui-radio",
|
|
660
|
-
const
|
|
689
|
+
h("ui-radio", M);
|
|
690
|
+
const R = ':host{display:inline-flex;align-items:center;box-sizing:border-box;font-family:var(--ui-fonte-base, "Inter", sans-serif);vertical-align:middle}.ui-switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1;outline:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.ui-switch--disabled{opacity:.5;cursor:not-allowed!important;pointer-events:none}.ui-switch__track{display:inline-flex;align-items:center;position:relative;width:36px;height:20px;background-color:var(--ui-cor-fundo-elevado, #1a1a1e);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .16));border-radius:var(--ui-raio-pill, 999px);box-sizing:border-box;padding:1px;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease;flex-shrink:0}.ui-switch:focus-visible .ui-switch__track,.ui-switch--foco .ui-switch__track{border-color:var(--ui-cor-primaria, #00E08A);box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 25%,transparent)}.ui-switch--checked .ui-switch__track{background-color:var(--ui-cor-primaria, #00E08A);border-color:var(--ui-cor-primaria, #00E08A)}.ui-switch__thumb{display:block;width:16px;height:16px;background-color:#fff;border-radius:50%;box-shadow:var(--ui-sombra-sm, 0 1px 3px rgba(0, 0, 0, .3));transition:transform .2s cubic-bezier(.4,0,.2,1),background-color .2s ease;transform:translate(0)}.ui-switch--checked .ui-switch__thumb{transform:translate(16px);background-color:var(--ui-cor-texto-sobre-primaria, #000000)}.ui-switch--sm .ui-switch__track{width:28px;height:16px;padding:1px}.ui-switch--sm .ui-switch__thumb{width:12px;height:12px}.ui-switch--sm.ui-switch--checked .ui-switch__thumb{transform:translate(12px)}.ui-switch--lg .ui-switch__track{width:44px;height:24px;padding:1px}.ui-switch--lg .ui-switch__thumb{width:20px;height:20px}.ui-switch--lg.ui-switch--checked .ui-switch__thumb{transform:translate(20px)}.ui-switch__label{display:inline-flex;align-items:center;font-size:clamp(11px,.85rem,14px);color:var(--ui-cor-texto, #e1e1e6);line-height:1}.ui-switch--label-esquerda{flex-direction:row-reverse}@media (max-width: 640px){.ui-switch{min-height:40px;padding:4px 0}.ui-switch__label{font-size:14px}}';
|
|
661
691
|
class x extends u {
|
|
662
692
|
constructor() {
|
|
663
693
|
super();
|
|
@@ -683,12 +713,12 @@ class x extends u {
|
|
|
683
713
|
});
|
|
684
714
|
const t = this.attachShadow({ mode: "open" });
|
|
685
715
|
t.innerHTML = `
|
|
686
|
-
<style>${
|
|
687
|
-
<div class="ui-switch" tabindex="0" role="switch" aria-checked="false">
|
|
688
|
-
<span class="ui-switch__track">
|
|
689
|
-
<span class="ui-switch__thumb"></span>
|
|
716
|
+
<style>${R}</style>
|
|
717
|
+
<div class="ui-switch" part="base" tabindex="0" role="switch" aria-checked="false">
|
|
718
|
+
<span class="ui-switch__track" part="controle">
|
|
719
|
+
<span class="ui-switch__thumb" part="indicador"></span>
|
|
690
720
|
</span>
|
|
691
|
-
<span class="ui-switch__label" style="display: none;"></span>
|
|
721
|
+
<span class="ui-switch__label" part="rotulo" style="display: none;"></span>
|
|
692
722
|
</div>
|
|
693
723
|
`, this.containerElement = t.querySelector(".ui-switch"), this.labelElement = t.querySelector(".ui-switch__label"), this.labelId = m("ui-switch-label"), this.labelElement.id = this.labelId;
|
|
694
724
|
}
|
|
@@ -805,22 +835,22 @@ class x extends u {
|
|
|
805
835
|
typeof t == "string" ? this.ativo = t === (this.getAttribute("value") || "on") : typeof t == "boolean" && (this.ativo = t), this.syncState();
|
|
806
836
|
}
|
|
807
837
|
}
|
|
808
|
-
class
|
|
838
|
+
class F extends x {
|
|
809
839
|
}
|
|
810
840
|
h("ui-switch", x);
|
|
811
|
-
h("ui-toggle",
|
|
841
|
+
h("ui-toggle", F);
|
|
812
842
|
export {
|
|
813
|
-
|
|
814
|
-
|
|
843
|
+
L as A,
|
|
844
|
+
A as L,
|
|
815
845
|
c as R,
|
|
816
|
-
|
|
817
|
-
|
|
846
|
+
V as U,
|
|
847
|
+
E as a,
|
|
818
848
|
g as b,
|
|
819
|
-
|
|
820
|
-
|
|
849
|
+
M as c,
|
|
850
|
+
I as d,
|
|
821
851
|
x as e,
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
852
|
+
F as f,
|
|
853
|
+
z as g,
|
|
854
|
+
C as h,
|
|
825
855
|
b as r
|
|
826
856
|
};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";var L=Object.defineProperty;var C=(n,i,t)=>i in n?L(n,i,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[i]=t;var a=(n,i,t)=>C(n,typeof i!="symbol"?i+"":i,t);const m=require("./listener-bag-D5omxZ9h.cjs"),z=require("./parts-vQa2873h.cjs"),u=require("./ssr-safe-CiHD1adl.cjs"),d=require("./ui-campo-texto-Cnn2UAkS.cjs"),h=require("./form-validacao-ytRYSF3E.cjs");class g{constructor(i,t,e){a(this,"scrollHandler");a(this,"resizeHandler");a(this,"posicionar",()=>{if(this.isMobileOrBottomSheet()){this.content.style.top="",this.content.style.left="",this.content.style.minWidth="";return}const i=this.button.getBoundingClientRect();this.content.style.top=`${Math.round(i.bottom+2)}px`,this.content.style.left=`${Math.round(i.left)}px`,this.content.style.minWidth=`${Math.round(Math.max(i.width,120))}px`,this.ajustarAoViewport(i)});this.host=i,this.button=t,this.content=e}isMobileOrBottomSheet(){return typeof window>"u"?!1:window.innerWidth<=640||this.host.hasAttribute("bottom-sheet")||this.host.hasAttribute("modo-mobile")}ajustarAoViewport(i){const t=this.content.offsetHeight,e=this.content.offsetWidth;if(t<=0||typeof window>"u")return;const s=8;i.bottom+2+t>window.innerHeight-s&&i.top-2-t>=s&&(this.content.style.top=`${Math.round(i.top-2-t)}px`),i.left+e>window.innerWidth-s&&(this.content.style.left=`${Math.max(s,Math.round(window.innerWidth-s-e))}px`)}ativarAcompanhamento(i){if(this.scrollHandler=i,this.resizeHandler=this.posicionar,window.addEventListener("scroll",this.scrollHandler,{capture:!0,passive:!0}),window.addEventListener("resize",this.resizeHandler,{passive:!0}),typeof this.content.showPopover=="function")try{this.content.showPopover()}catch{}this.posicionar()}desativarAcompanhamento(){if(this.scrollHandler&&(window.removeEventListener("scroll",this.scrollHandler,{capture:!0}),this.scrollHandler=void 0),this.resizeHandler&&(window.removeEventListener("resize",this.resizeHandler),this.resizeHandler=void 0),typeof this.content.hidePopover=="function")try{this.content.hidePopover()}catch{}}}class x{constructor(i){a(this,"focusedIndex",-1);this.listElement=i}focarPrimeiroItem(){const i=Array.from(this.listElement.querySelectorAll(".ui-lista-flutuante__item"));if(i.length>0){const t=i.findIndex(e=>e.classList.contains("ui-lista-flutuante__item--selecionado"));this.focusedIndex=Math.max(0,t),i[this.focusedIndex].focus()}}resetarFoco(){this.focusedIndex=-1}moverFoco(i){const t=Array.from(this.listElement.querySelectorAll(".ui-lista-flutuante__item"));t.length!==0&&(this.focusedIndex+=i,this.focusedIndex<0&&(this.focusedIndex=t.length-1),this.focusedIndex>=t.length&&(this.focusedIndex=0),t[this.focusedIndex].focus())}tratarKeydownLista(i,t,e,s,r){if(i.key==="ArrowDown")i.preventDefault(),this.moverFoco(1);else if(i.key==="ArrowUp")i.preventDefault(),this.moverFoco(-1);else if(i.key==="Home"||i.key==="End"){i.preventDefault();const o=i.key==="End";this.focusedIndex=o?-1:0,o?this.moverFoco(-1):this.moverFoco(0)}else i.key==="Tab"?s():i.key==="Enter"||i.key===" "?(i.preventDefault(),this.focusedIndex>=0&&this.focusedIndex<t.length&&e(t[this.focusedIndex])):i.key==="Escape"&&(i.preventDefault(),s(),r.focus())}}const I=':host{display:inline-block;position:relative;width:100%;box-sizing:border-box;font-family:var(--ui-fonte-base, "Inter", sans-serif)}:host([inline]){width:auto}.ui-lista-flutuante__container{display:flex;flex-direction:column;width:100%;position:relative}.ui-lista-flutuante__label{font-family:var(--ui-fonte-base, "Inter", sans-serif);font-size:var(--ui-tamanho-corpo-sm, 13px);font-weight:var(--ui-peso-medio, 500);color:var(--ui-cor-texto, #e1e1e6);margin-bottom:4px;-webkit-user-select:none;user-select:none;flex-shrink:0}.ui-lista-flutuante__asterisco{color:var(--ui-cor-texto-erro, #ff5555);margin-left:2px}.ui-lista-flutuante__gatilho{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;height:var(--ui-campo-altura, 100%);min-height:var(--ui-campo-altura, var(--ui-altura-minima, 15px));padding:0 8px;background-color:var(--ui-cor-fundo-elevado, #1a1a1e);color:var(--ui-cor-texto, #e1e1e6);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));border-radius:var(--ui-raio-borda, 6px);font-family:var(--ui-fonte-base, "Inter", sans-serif);font-size:clamp(11px,.85rem,13px);line-height:1;cursor:pointer;box-sizing:border-box;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:border-color .15s ease,background-color .15s ease}.ui-lista-flutuante__gatilho:hover:not(:disabled){border-color:var(--ui-cor-primaria, #00E08A)}.ui-lista-flutuante__gatilho:disabled{opacity:.5;cursor:not-allowed}.ui-lista-flutuante__texto{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;text-align:left}.ui-lista-flutuante__seta{font-size:10px;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease;color:var(--ui-cor-texto-secundario, #888899);flex-shrink:0;shape-rendering:geometricPrecision}:host([aberta]) .ui-lista-flutuante__seta{transform:rotate(180deg)}.ui-lista-flutuante__backdrop{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;z-index:calc(var(--ui-z-popover, 1050) - 1)}:host([aberta]) .ui-lista-flutuante__backdrop{display:block}:host(:not([aberta])) .ui-lista-flutuante__conteudo{display:none!important}:host([aberta]) .ui-lista-flutuante__conteudo{display:block}.ui-lista-flutuante__conteudo{position:fixed;margin:0;padding:4px;list-style:none;background-color:var(--ui-cor-fundo-menu, #18181c);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .14));border-radius:var(--ui-raio-borda, 6px);box-shadow:var(--ui-sombra-lg, 0 8px 28px rgba(0, 0, 0, .55));max-height:220px;overflow-y:auto;z-index:var(--ui-z-popover, 1050);box-sizing:border-box;inset:auto}.ui-lista-flutuante__sheet-header{display:none;width:100%;margin-bottom:8px}.ui-lista-flutuante__handle{width:36px;height:4px;border-radius:2px;background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 25%,transparent);margin:2px auto 8px}.ui-lista-flutuante__sheet-title-bar{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 6px 8px;border-bottom:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .08));margin-bottom:6px}.ui-lista-flutuante__sheet-titulo{font-size:13px;font-weight:600;color:var(--ui-cor-primaria, #00E08A);letter-spacing:.3px;text-transform:uppercase}.ui-lista-flutuante__sheet-close{background:transparent;border:none;color:var(--ui-cor-texto-secundario, #888899);font-size:14px;cursor:pointer;padding:4px 8px;border-radius:var(--ui-raio-sm, 4px);display:flex;align-items:center;justify-content:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:color .15s,background-color .15s}.ui-lista-flutuante__sheet-close:hover{color:#fff;background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 8%,transparent)}.ui-lista-flutuante__item{padding:6px 10px;font-family:var(--ui-fonte-base, "Inter", sans-serif);font-size:12px;line-height:1.2;color:var(--ui-cor-texto, #e1e1e6);border-radius:var(--ui-raio-sm, 4px);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color .12s ease,color .12s ease;-webkit-user-select:none;user-select:none}.ui-lista-flutuante__item:hover{background-color:var(--ui-cor-hover-menu, rgba(255, 255, 255, .08))}.ui-lista-flutuante__item--selecionado{background-color:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 15%,transparent);color:var(--ui-cor-primaria, #00E08A);font-weight:600}.ui-lista-flutuante__item--selecionado:after{content:"✓";font-size:11px;color:var(--ui-cor-primaria, #00E08A)}@media (max-width: 640px){.ui-lista-flutuante__gatilho{min-height:max(var(--ui-campo-altura, 38px),38px);font-size:15px}:host([aberta]) .ui-lista-flutuante__backdrop{background-color:#00000059;-webkit-backdrop-filter:none;backdrop-filter:none}.ui-lista-flutuante__conteudo{position:fixed!important;bottom:0!important;top:auto!important;left:0!important;width:100vw!important;max-width:100vw!important;min-width:100vw!important;max-height:70vh!important;max-height:70dvh!important;border-radius:var(--ui-raio-xl, 16px) var(--ui-raio-xl, 16px) 0 0!important;border-bottom:none!important;padding:10px 16px calc(24px + env(safe-area-inset-bottom,0px)) 16px!important;box-shadow:0 -8px 32px #000000b3!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;animation:ui-bottom-sheet-slide .22s cubic-bezier(.4,0,.2,1)}.ui-lista-flutuante__sheet-header{display:flex!important;flex-direction:column!important}.ui-lista-flutuante__sheet-close{min-width:44px;min-height:44px;font-size:18px}.ui-lista-flutuante__item{padding:12px 14px!important;font-size:15px!important;margin-bottom:3px}}:host([bottom-sheet][aberta]) .ui-lista-flutuante__backdrop,:host([modo-mobile][aberta]) .ui-lista-flutuante__backdrop{background-color:#00000059;-webkit-backdrop-filter:none;backdrop-filter:none}:host([bottom-sheet]) .ui-lista-flutuante__conteudo,:host([modo-mobile]) .ui-lista-flutuante__conteudo{position:fixed!important;bottom:0!important;top:auto!important;left:0!important;width:100vw!important;max-width:100vw!important;min-width:100vw!important;max-height:70vh!important;max-height:70dvh!important;border-radius:var(--ui-raio-xl, 16px) var(--ui-raio-xl, 16px) 0 0!important;border-bottom:none!important;padding:10px 16px calc(24px + env(safe-area-inset-bottom,0px)) 16px!important;box-shadow:0 -8px 32px #000000b3!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;animation:ui-bottom-sheet-slide .22s cubic-bezier(.4,0,.2,1)}:host([bottom-sheet]) .ui-lista-flutuante__sheet-header,:host([modo-mobile]) .ui-lista-flutuante__sheet-header{display:flex!important;flex-direction:column!important}:host([bottom-sheet]) .ui-lista-flutuante__sheet-close,:host([modo-mobile]) .ui-lista-flutuante__sheet-close{min-width:44px;min-height:44px;font-size:18px}:host([bottom-sheet]) .ui-lista-flutuante__item,:host([modo-mobile]) .ui-lista-flutuante__item{padding:12px 14px!important;font-size:15px!important;margin-bottom:3px}@keyframes ui-bottom-sheet-slide{0%{transform:translateY(100%)}to{transform:translateY(0)}}',v=["aberta","texto-padrao","value","disabled","bottom-sheet","modo-mobile","label","rotulo","placeholder","tamanho","size","altura","height","densidade","name","obrigatorio","required","mensagem-validacao","aria-label"];function _(){return`
|
|
2
|
+
<style>${I}</style>
|
|
3
|
+
<div class="ui-lista-flutuante__container">
|
|
4
|
+
<label class="ui-lista-flutuante__label" part="rotulo" style="display: none;"></label>
|
|
5
|
+
<div class="ui-lista-flutuante__backdrop"></div>
|
|
6
|
+
<button class="ui-lista-flutuante__gatilho" part="campo" aria-haspopup="listbox" aria-expanded="false" type="button">
|
|
7
|
+
<span class="ui-lista-flutuante__texto" part="valor"></span>
|
|
8
|
+
<span class="ui-lista-flutuante__seta" part="seta">▼</span>
|
|
9
|
+
</button>
|
|
10
|
+
<div class="ui-lista-flutuante__conteudo" part="lista" role="listbox" popover="manual">
|
|
11
|
+
<div class="ui-lista-flutuante__sheet-header">
|
|
12
|
+
<div class="ui-lista-flutuante__handle"></div>
|
|
13
|
+
<div class="ui-lista-flutuante__sheet-title-bar">
|
|
14
|
+
<span class="ui-lista-flutuante__sheet-titulo">Selecione uma opção</span>
|
|
15
|
+
<button class="ui-lista-flutuante__sheet-close" type="button" aria-label="Fechar">✕</button>
|
|
16
|
+
</div>
|
|
17
|
+
</div>
|
|
18
|
+
<ul class="ui-lista-flutuante__lista" style="margin: 0; padding: 0; list-style: none;"></ul>
|
|
19
|
+
</div>
|
|
20
|
+
</div>
|
|
21
|
+
`}function b(n,i,t){n.innerHTML="",i.forEach(e=>{const s=document.createElement("li"),r=String(e.id)===String(t);s.className=`ui-lista-flutuante__item ${r?"ui-lista-flutuante__item--selecionado":""}`,s.setAttribute("data-id",e.id),s.textContent=e.label,s.role="option",s.tabIndex=-1,s.setAttribute("part",r?"opcao opcao-selecionada":"opcao"),r&&s.setAttribute("aria-selected","true"),n.appendChild(s)})}function k(n,i){n.querySelectorAll(".ui-lista-flutuante__item").forEach(e=>{const s=e.getAttribute("data-id");z.alternarPart(e,"opcao-selecionada",s===String(i)),s===String(i)?(e.classList.add("ui-lista-flutuante__item--selecionado"),e.setAttribute("aria-selected","true")):(e.classList.remove("ui-lista-flutuante__item--selecionado"),e.removeAttribute("aria-selected"))})}class p extends d.FormAssociatedElement{constructor(){super();a(this,"labelElement");a(this,"button");a(this,"content");a(this,"listElement");a(this,"textoElement");a(this,"backdropElement");a(this,"sheetTituloElement");a(this,"sheetCloseButton");a(this,"idsAcessibilidade");a(this,"listeners",new m.ListenerBag);a(this,"_itens",[]);a(this,"_value","");a(this,"_defaultValue","");a(this,"_defaultCapturado",!1);a(this,"observer");a(this,"posicionamento");a(this,"teclado");a(this,"toggleLista",t=>{t.stopPropagation(),!this.disabled&&(this.hasAttribute("aberta")?this.fechar():this.abrir())});a(this,"handleKeyDown",t=>{if(!this.disabled){if(t.key==="Escape"&&this.hasAttribute("aberta")){t.preventDefault(),this.fechar();return}(t.key==="Enter"||t.key===" "||t.key==="ArrowDown"||t.key==="ArrowUp")&&(t.preventDefault(),this.hasAttribute("aberta")?this.teclado.focarPrimeiroItem():this.abrir())}});a(this,"handleListKeyDown",t=>{this.hasAttribute("aberta")&&this.teclado.tratarKeydownLista(t,this._itens,e=>this.selecionarItem(e),this.fechar,this.button)});a(this,"fechar",()=>{this.hasAttribute("aberta")&&(this.removeAttribute("aberta"),this.posicionamento.desativarAcompanhamento(),this.teclado.resetarFoco())});a(this,"handleClickFora",t=>{if(!this.hasAttribute("aberta"))return;const e=t.composedPath();!e.includes(this)&&!e.includes(this.content)&&this.fechar()});a(this,"focarGatilho",()=>{this.disabled||this.button.focus()});a(this,"handleHostClick",t=>{h.cliqueVeioDeRotuloExterno(this,t)&&this.focarGatilho()});a(this,"handleListClick",t=>{var o;t.stopPropagation();const e=(o=t.target)==null?void 0:o.closest("li[data-id]");if(!e)return;const s=e.getAttribute("data-id"),r=this._itens.find(c=>String(c.id)===String(s));r&&this.selecionarItem(r)});const t=this.attachShadow({mode:"open"});t.innerHTML=_(),this.labelElement=t.querySelector(".ui-lista-flutuante__label"),this.button=t.querySelector(".ui-lista-flutuante__gatilho"),this.content=t.querySelector(".ui-lista-flutuante__conteudo"),this.listElement=t.querySelector(".ui-lista-flutuante__lista"),this.textoElement=t.querySelector(".ui-lista-flutuante__texto"),this.backdropElement=t.querySelector(".ui-lista-flutuante__backdrop"),this.sheetTituloElement=t.querySelector(".ui-lista-flutuante__sheet-titulo"),this.sheetCloseButton=t.querySelector(".ui-lista-flutuante__sheet-close");const e=h.gerarIdUnico("ui-select");this.idsAcessibilidade={label:`${e}-label`,gatilho:`${e}-gatilho`,texto:`${e}-texto`,lista:`${e}-lista`},this.labelElement.id=this.idsAcessibilidade.label,this.button.id=this.idsAcessibilidade.gatilho,this.textoElement.id=this.idsAcessibilidade.texto,this.content.id=this.idsAcessibilidade.lista,this.button.setAttribute("aria-controls",this.idsAcessibilidade.lista),this.posicionamento=new g(this,this.button,this.content),this.teclado=new x(this.listElement)}static get observedAttributes(){return v}connectedCallback(){this.listeners.cleanup(),this.listeners.add(this.button,"click",this.toggleLista),this.listeners.add(this.button,"keydown",this.handleKeyDown),this.listeners.add(this.content,"keydown",this.handleListKeyDown),this.listeners.add(this.backdropElement,"click",this.fechar),this.listeners.add(this.listElement,"click",this.handleListClick),this.listeners.add(this.sheetCloseButton,"click",t=>{t.stopPropagation(),this.fechar()}),this.listeners.add(document,"click",this.handleClickFora),this.listeners.add(this.labelElement,"click",this.focarGatilho),this.listeners.add(this,"click",this.handleHostClick),this._defaultCapturado||(this._defaultValue=this.getAttribute("value")||"",this._defaultCapturado=!0),this.carregarItensFilhos(),this.syncState(),this.observer=new MutationObserver(()=>this.carregarItensFilhos()),this.observer.observe(this,{childList:!0,subtree:!0})}carregarItensFilhos(){const t=Array.from(this.querySelectorAll('option, ui-opcao, [role="option"], [data-opcao], [data-value]:not(input):not(select)'));t.length>0&&(this._itens=t.map((e,s)=>{var o;const r=e.getAttribute("value")||e.getAttribute("data-value")||String(s+1);return{id:r,label:((o=e.textContent)==null?void 0:o.trim())||r||`Opção ${s+1}`}}),b(this.listElement,this._itens,this._value),this.syncLabel())}disconnectedCallback(){this.listeners.cleanup(),this.observer&&this.observer.disconnect(),this.fechar()}attributeChangedCallback(t,e,s){t==="aberta"&&this.button.setAttribute("aria-expanded",String(s!==null)),(t==="texto-padrao"||t==="placeholder"||t==="label"||t==="rotulo"||t==="aria-label")&&this.syncLabel(),t==="value"&&s!==this._value&&(this.value=s||""),t==="disabled"&&(this.button.disabled=this.disabled),(t==="altura"||t==="height")&&(s?this.style.setProperty("--ui-campo-altura",isNaN(Number(s))?s:`${s}px`):this.style.removeProperty("--ui-campo-altura"))}get value(){return this._value}set value(t){this._value=t,this.setAttribute("value",t),this.internals.setFormValue(t),this.syncLabel(),k(this.listElement,this._value),this.atualizarValidade()}get label(){return this.getAttribute("label")||this.getAttribute("rotulo")||""}set label(t){t?this.setAttribute("label",t):(this.removeAttribute("label"),this.removeAttribute("rotulo")),this.syncLabel()}get disabled(){return this.hasAttribute("disabled")||this._formDisabled}set disabled(t){t?this.setAttribute("disabled",""):this.removeAttribute("disabled"),this.button.disabled=this.disabled}get name(){return this.getAttribute("name")||""}set name(t){this.setAttribute("name",t)}get type(){return"select-one"}atualizarValidade(){if(!this.internals||typeof this.internals.setValidity!="function")return;if(this.disabled){this.internals.setValidity({});return}if(this._customErrorMessage){this.internals.setValidity({customError:!0},this._customErrorMessage,this.button);return}if((this.hasAttribute("obrigatorio")||this.hasAttribute("required"))&&(!this._value||this._value.trim()==="")){const e=this.getAttribute("mensagem-validacao")||"Selecione um item da lista.";this.internals.setValidity({valueMissing:!0},e,this.button);return}this.internals.setValidity({})}formDisabledCallback(t){this._formDisabled=t,this.button.disabled=this.disabled,this.disabled&&this.fechar()}formResetCallback(){this.value=this._defaultValue}formStateRestoreCallback(t,e){typeof t=="string"&&(this.value=t)}get itens(){return this._itens}set itens(t){this._itens=t||[],b(this.listElement,this._itens,this._value),this.syncLabel()}abrir(){this.disabled||this.hasAttribute("aberta")||(this.setAttribute("aberta",""),this.posicionamento.posicionar(),this.posicionamento.ativarAcompanhamento(this.fechar))}syncLabel(){const t=this.getAttribute("label")||this.getAttribute("rotulo");if(t)d.renderizarRotulo(this.labelElement,t,this.required,"ui-lista-flutuante__asterisco"),this.labelElement.style.display="block",this.sheetTituloElement.textContent=t,this.button.setAttribute("aria-labelledby",`${this.idsAcessibilidade.label} ${this.idsAcessibilidade.texto}`),this.content.setAttribute("aria-labelledby",this.idsAcessibilidade.label),this.button.removeAttribute("aria-label"),this.content.removeAttribute("aria-label");else{this.labelElement.style.display="none",this.sincronizarRotuloExterno();const s=this.getAttribute("texto-padrao")||this.getAttribute("placeholder")||"Opções";this.sheetTituloElement.textContent=s}const e=this._itens.find(s=>String(s.id)===String(this._value));if(e)this.textoElement.textContent=e.label;else{const s=this.getAttribute("texto-padrao")||this.getAttribute("placeholder")||"Opções";this.textoElement.textContent=s}}sincronizarRotuloExterno(){this.button.removeAttribute("aria-labelledby"),this.content.removeAttribute("aria-labelledby");const t=h.obterRotuloExterno(this,this.internals);t?(this.button.setAttribute("aria-labelledby",`${this.idsAcessibilidade.gatilho} ${this.idsAcessibilidade.texto}`),this.button.setAttribute("aria-label",t),this.content.setAttribute("aria-label",t)):(this.button.removeAttribute("aria-label"),this.content.removeAttribute("aria-label"))}syncState(){const t=this.getAttribute("altura")||this.getAttribute("height");t&&this.style.setProperty("--ui-campo-altura",isNaN(Number(t))?t:`${t}px`),this.hasAttribute("value")&&(this._value=this.getAttribute("value")||"",this.internals.setFormValue(this._value)),this.syncLabel(),this.atualizarValidade()}selecionarItem(t){var r;const e=(r=this.shadowRoot)==null?void 0:r.activeElement,s=!!e&&this.content.contains(e);this.value=t.id,this.fechar(),s&&this.button.focus(),this.dispatchEvent(new CustomEvent("ui-selecionar",{detail:t,bubbles:!0,composed:!0})),this.dispatchEvent(new Event("input",{bubbles:!0,composed:!0})),this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0}))}}class y extends p{}u.definirCustomElement("ui-lista-flutuante",p);u.definirCustomElement("ui-select",y);const q=':host{display:inline-flex;align-items:center;box-sizing:border-box;font-family:var(--ui-fonte-base, "Inter", sans-serif);vertical-align:middle}.ui-checkbox{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1;outline:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.ui-checkbox--disabled{opacity:.5;cursor:not-allowed!important;pointer-events:none}.ui-checkbox__box{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;min-width:16px;min-height:16px;background-color:var(--ui-cor-fundo-elevado, #1a1a1e);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .16));border-radius:var(--ui-raio-sm, 4px);box-sizing:border-box;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease;flex-shrink:0}.ui-checkbox:focus-visible .ui-checkbox__box,.ui-checkbox--foco .ui-checkbox__box{border-color:var(--ui-cor-primaria, #00E08A);box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 25%,transparent)}.ui-checkbox--checked .ui-checkbox__box,.ui-checkbox--indeterminate .ui-checkbox__box{background-color:var(--ui-cor-primaria, #00E08A);border-color:var(--ui-cor-primaria, #00E08A);color:var(--ui-cor-texto-sobre-primaria, #000000)}.ui-checkbox__mark{width:12px;height:12px;display:flex;align-items:center;justify-content:center;transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s ease;transform:scale(0);opacity:0}.ui-checkbox--checked .ui-checkbox__mark,.ui-checkbox--indeterminate .ui-checkbox__mark{transform:scale(1);opacity:1}.ui-checkbox__mark svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;shape-rendering:geometricPrecision}.ui-checkbox__label{display:inline-flex;align-items:center;font-size:clamp(11px,.85rem,14px);color:var(--ui-cor-texto, #e1e1e6);line-height:1}.ui-checkbox--label-esquerda{flex-direction:row-reverse}@media (max-width: 640px){.ui-checkbox{min-height:40px;padding:4px 0}.ui-checkbox__box{width:20px;height:20px;min-width:20px;min-height:20px}.ui-checkbox__mark{width:14px;height:14px}.ui-checkbox__label{font-size:14px}}';class E extends d.FormAssociatedElement{constructor(){super();a(this,"containerElement");a(this,"markElement");a(this,"labelElement");a(this,"listeners",new m.ListenerBag);a(this,"_defaultChecked",!1);a(this,"_defaultIndeterminate",!1);a(this,"handleClick",t=>{t.preventDefault(),this.alternar()});a(this,"handleKeyDown",t=>{(t.key===" "||t.key==="Enter")&&(t.preventDefault(),this.alternar())});a(this,"handleFocus",()=>{this.containerElement.classList.add("ui-checkbox--foco")});a(this,"handleBlur",()=>{this.containerElement.classList.remove("ui-checkbox--foco")});const t=this.attachShadow({mode:"open"});t.innerHTML=`
|
|
22
|
+
<style>${q}</style>
|
|
23
|
+
<div class="ui-checkbox" part="base" tabindex="0" role="checkbox" aria-checked="false">
|
|
24
|
+
<span class="ui-checkbox__box" part="controle">
|
|
25
|
+
<span class="ui-checkbox__mark" part="indicador"></span>
|
|
26
|
+
</span>
|
|
27
|
+
<span class="ui-checkbox__label" part="rotulo" style="display: none;"></span>
|
|
28
|
+
</div>
|
|
29
|
+
`,this.containerElement=t.querySelector(".ui-checkbox"),this.markElement=t.querySelector(".ui-checkbox__mark"),this.labelElement=t.querySelector(".ui-checkbox__label")}static get observedAttributes(){return["marcado","checked","indeterminado","indeterminate","disabled","value","label","posicao-label","name","obrigatorio","required","mensagem-validacao"]}connectedCallback(){this.listeners.cleanup(),this.listeners.add(this.containerElement,"click",this.handleClick),this.listeners.add(this.containerElement,"keydown",this.handleKeyDown),this.listeners.add(this.containerElement,"focus",this.handleFocus),this.listeners.add(this.containerElement,"blur",this.handleBlur),this._defaultChecked=this.hasAttribute("marcado")||this.hasAttribute("checked"),this._defaultIndeterminate=this.hasAttribute("indeterminado")||this.hasAttribute("indeterminate"),this.syncState()}disconnectedCallback(){this.listeners.cleanup()}attributeChangedCallback(t,e,s){this.syncState()}get marcado(){return this.hasAttribute("marcado")||this.hasAttribute("checked")}set marcado(t){t?this.setAttribute("marcado",""):(this.removeAttribute("marcado"),this.removeAttribute("checked")),this.syncState()}get checked(){return this.marcado}set checked(t){this.marcado=t}get value(){return this.getAttribute("value")||"on"}set value(t){this.setAttribute("value",t),this.syncState()}get name(){return this.getAttribute("name")||""}set name(t){this.setAttribute("name",t),this.syncState()}get indeterminado(){return this.hasAttribute("indeterminado")||this.hasAttribute("indeterminate")}set indeterminado(t){t?this.setAttribute("indeterminado",""):(this.removeAttribute("indeterminado"),this.removeAttribute("indeterminate")),this.syncState()}get disabled(){return this.hasAttribute("disabled")||this._formDisabled}set disabled(t){t?this.setAttribute("disabled",""):this.removeAttribute("disabled"),this.syncState()}get type(){return"checkbox"}atualizarValidade(){if(!this.internals||typeof this.internals.setValidity!="function")return;if(this.disabled){this.internals.setValidity({});return}if(this._customErrorMessage){this.internals.setValidity({customError:!0},this._customErrorMessage,this.containerElement);return}if((this.hasAttribute("obrigatorio")||this.hasAttribute("required"))&&!this.marcado){const e=this.getAttribute("mensagem-validacao")||"Marque esta caixa para continuar.";this.internals.setValidity({valueMissing:!0},e,this.containerElement);return}this.internals.setValidity({})}alternar(){this.disabled||(this.indeterminado?(this.indeterminado=!1,this.marcado=!0):this.marcado=!this.marcado,this.dispatchEvent(new CustomEvent("ui-change",{detail:{marcado:this.marcado,indeterminado:this.indeterminado,value:this.getAttribute("value")||""},bubbles:!0,composed:!0})),this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0})))}syncState(){const t=this.marcado,e=this.indeterminado,s=this.disabled,r=this.getAttribute("label"),o=this.getAttribute("posicao-label")||"direita";this.containerElement.setAttribute("aria-checked",e?"mixed":String(t)),s?(this.containerElement.classList.add("ui-checkbox--disabled"),this.containerElement.setAttribute("tabindex","-1"),this.containerElement.setAttribute("aria-disabled","true")):(this.containerElement.classList.remove("ui-checkbox--disabled"),this.containerElement.setAttribute("tabindex","0"),this.containerElement.removeAttribute("aria-disabled")),t?this.containerElement.classList.add("ui-checkbox--checked"):this.containerElement.classList.remove("ui-checkbox--checked"),e?this.containerElement.classList.add("ui-checkbox--indeterminate"):this.containerElement.classList.remove("ui-checkbox--indeterminate"),o==="esquerda"?this.containerElement.classList.add("ui-checkbox--label-esquerda"):this.containerElement.classList.remove("ui-checkbox--label-esquerda"),e?this.markElement.innerHTML=`
|
|
30
|
+
<svg viewBox="0 0 24 24">
|
|
31
|
+
<line x1="5" y1="12" x2="19" y2="12"></line>
|
|
32
|
+
</svg>
|
|
33
|
+
`:t?this.markElement.innerHTML=`
|
|
34
|
+
<svg viewBox="0 0 24 24">
|
|
35
|
+
<polyline points="20 6 9 17 4 12"></polyline>
|
|
36
|
+
</svg>
|
|
37
|
+
`:this.markElement.innerHTML="",r?(this.labelElement.textContent=r,this.labelElement.style.display="inline"):this.labelElement.style.display="none",t?this.internals.setFormValue(this.getAttribute("value")||"on"):this.internals.setFormValue(null),this.atualizarValidade()}formResetCallback(){this.marcado=this._defaultChecked,this.indeterminado=this._defaultIndeterminate,this.syncState()}formStateRestoreCallback(t,e){typeof t=="string"?this.marcado=t===(this.getAttribute("value")||"on"):typeof t=="boolean"&&(this.marcado=t),this.syncState()}}u.definirCustomElement("ui-checkbox",E);const V=':host{display:inline-flex;align-items:center;box-sizing:border-box;font-family:var(--ui-fonte-base, "Inter", sans-serif);vertical-align:middle}.ui-radio{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1;outline:none}.ui-radio--disabled{opacity:.5;cursor:not-allowed!important;pointer-events:none}.ui-radio__circle{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;min-width:16px;min-height:16px;background-color:var(--ui-cor-fundo-elevado, #1a1a1e);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .16));border-radius:50%;box-sizing:border-box;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease;flex-shrink:0}.ui-radio:focus-visible .ui-radio__circle,.ui-radio--foco .ui-radio__circle{border-color:var(--ui-cor-primaria, #00E08A);box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 25%,transparent)}.ui-radio--checked .ui-radio__circle{border-color:var(--ui-cor-primaria, #00E08A)}.ui-radio__dot{width:8px;height:8px;border-radius:50%;background-color:var(--ui-cor-primaria, #00E08A);transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s ease;transform:scale(0);opacity:0}.ui-radio--checked .ui-radio__dot{transform:scale(1);opacity:1}.ui-radio__label{display:inline-flex;align-items:center;font-size:clamp(11px,.85rem,14px);color:var(--ui-cor-texto, #e1e1e6);line-height:1}.ui-radio--label-esquerda{flex-direction:row-reverse}';class l{static getScopeNode(i){return i.closest("form")||i.getRootNode()||document}static registrar(i){const t=i.name;if(t){const e=this.getScopeNode(i);this.registry.has(e)||this.registry.set(e,new Map);const s=this.registry.get(e);s.has(t)||s.set(t,new Set),s.get(t).add(i)}}static desregistrar(i){const t=i.name;if(t){const e=this.getScopeNode(i),s=this.registry.get(e);if(s&&s.has(t)){const r=s.get(t);r.delete(i),r.size===0&&s.delete(t),s.size===0&&this.registry.delete(e)}}}static obterRadiosDoGrupo(i){const t=i.name;if(!t)return[];const e=this.getScopeNode(i),s=this.registry.get(e);return!s||!s.has(t)?[]:Array.from(s.get(t))}static desmarcarOutros(i){this.obterRadiosDoGrupo(i).forEach(e=>{e!==i&&(e.removeAttribute("marcado"),e.removeAttribute("checked"),e.syncState())})}static tratarNavegacaoTeclado(i,t){if(["ArrowDown","ArrowRight","ArrowUp","ArrowLeft"].includes(i.key)){i.preventDefault();const s=this.obterRadiosDoGrupo(t).filter(c=>!c.disabled);if(s.length<=1)return;const r=s.indexOf(t);let o=r;if(i.key==="ArrowDown"||i.key==="ArrowRight"?o=(r+1)%s.length:(i.key==="ArrowUp"||i.key==="ArrowLeft")&&(o=(r-1+s.length)%s.length),o!==r&&o>=0&&o<s.length){const c=s[o];c.selecionar(),c.focus()}}}}a(l,"registry",new WeakMap);class w extends d.FormAssociatedElement{constructor(){super();a(this,"containerElement");a(this,"labelElement");a(this,"_defaultChecked",!1);a(this,"handleClick",t=>{t.preventDefault(),this.selecionar(),this.containerElement.focus()});a(this,"handleKeyDown",t=>{t.key===" "||t.key==="Enter"?(t.preventDefault(),this.selecionar()):l.tratarNavegacaoTeclado(t,this)});a(this,"handleFocus",()=>{this.containerElement.classList.add("ui-radio--foco")});a(this,"handleBlur",()=>{this.containerElement.classList.remove("ui-radio--foco")});const t=this.attachShadow({mode:"open"});t.innerHTML=`
|
|
38
|
+
<style>${V}</style>
|
|
39
|
+
<div class="ui-radio" part="base" tabindex="0" role="radio" aria-checked="false">
|
|
40
|
+
<span class="ui-radio__circle" part="controle">
|
|
41
|
+
<span class="ui-radio__dot" part="indicador"></span>
|
|
42
|
+
</span>
|
|
43
|
+
<span class="ui-radio__label" part="rotulo" style="display: none;"></span>
|
|
44
|
+
</div>
|
|
45
|
+
`,this.containerElement=t.querySelector(".ui-radio"),this.labelElement=t.querySelector(".ui-radio__label")}static get observedAttributes(){return["marcado","checked","name","nome","disabled","value","label","posicao-label","obrigatorio","required","mensagem-validacao"]}connectedCallback(){this.containerElement.addEventListener("click",this.handleClick),this.containerElement.addEventListener("keydown",this.handleKeyDown),this.containerElement.addEventListener("focus",this.handleFocus),this.containerElement.addEventListener("blur",this.handleBlur),this._defaultChecked=this.hasAttribute("marcado")||this.hasAttribute("checked"),l.registrar(this),this.syncState()}disconnectedCallback(){this.containerElement.removeEventListener("click",this.handleClick),this.containerElement.removeEventListener("keydown",this.handleKeyDown),this.containerElement.removeEventListener("focus",this.handleFocus),this.containerElement.removeEventListener("blur",this.handleBlur),l.desregistrar(this)}attributeChangedCallback(t,e,s){this.syncState()}get marcado(){return this.hasAttribute("marcado")||this.hasAttribute("checked")}set marcado(t){t?this.setAttribute("marcado",""):(this.removeAttribute("marcado"),this.removeAttribute("checked"))}get name(){return this.getAttribute("name")||this.getAttribute("nome")||""}set name(t){l.desregistrar(this),this.setAttribute("name",t),l.registrar(this),this.syncState()}get disabled(){return this.hasAttribute("disabled")||this._formDisabled}set disabled(t){t?this.setAttribute("disabled",""):this.removeAttribute("disabled"),this.syncState()}get type(){return"radio"}atualizarValidade(){if(!this.internals||typeof this.internals.setValidity!="function")return;if(this.disabled){this.internals.setValidity({});return}if(this._customErrorMessage){this.internals.setValidity({customError:!0},this._customErrorMessage,this.containerElement);return}const t=l.obterRadiosDoGrupo(this);if((this.required||t.length>0&&t.some(s=>s.required))&&!(this.marcado||t.length>0&&t.some(r=>r.marcado))){const r=this.getAttribute("mensagem-validacao")||"Selecione uma opção.";this.internals.setValidity({valueMissing:!0},r,this.containerElement);return}this.internals.setValidity({})}focus(t){this.containerElement.focus(t)}selecionar(){this.disabled||this.marcado||(l.desmarcarOutros(this),this.marcado=!0,this.dispatchEvent(new CustomEvent("ui-change",{detail:{marcado:!0,name:this.name,value:this.getAttribute("value")||""},bubbles:!0,composed:!0})),this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0})),l.obterRadiosDoGrupo(this).forEach(t=>t.atualizarValidade()))}syncState(){const t=this.marcado,e=this.disabled,s=this.getAttribute("label"),r=this.getAttribute("posicao-label")||"direita";if(this.containerElement.setAttribute("aria-checked",String(t)),e)this.containerElement.classList.add("ui-radio--disabled"),this.containerElement.setAttribute("tabindex","-1"),this.containerElement.setAttribute("aria-disabled","true");else{this.containerElement.classList.remove("ui-radio--disabled"),this.containerElement.removeAttribute("aria-disabled");const o=l.obterRadiosDoGrupo(this);o.length>0?o.some(S=>S.marcado)?this.containerElement.setAttribute("tabindex",t?"0":"-1"):this.containerElement.setAttribute("tabindex",o[0]===this?"0":"-1"):this.containerElement.setAttribute("tabindex","0")}t?this.containerElement.classList.add("ui-radio--checked"):this.containerElement.classList.remove("ui-radio--checked"),r==="esquerda"?this.containerElement.classList.add("ui-radio--label-esquerda"):this.containerElement.classList.remove("ui-radio--label-esquerda"),s?(this.labelElement.textContent=s,this.labelElement.style.display="inline"):this.labelElement.style.display="none",t?this.internals.setFormValue(this.getAttribute("value")||"on"):this.internals.setFormValue(null),this.atualizarValidade()}formResetCallback(){this.marcado=this._defaultChecked,this._defaultChecked?this.internals.setFormValue(this.getAttribute("value")||"on"):this.internals.setFormValue(null),this.atualizarValidade()}formStateRestoreCallback(t,e){typeof t=="string"?this.marcado=t===(this.getAttribute("value")||"on"):typeof t=="boolean"&&(this.marcado=t),this.syncState()}}u.definirCustomElement("ui-radio",w);const D=':host{display:inline-flex;align-items:center;box-sizing:border-box;font-family:var(--ui-fonte-base, "Inter", sans-serif);vertical-align:middle}.ui-switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1;outline:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.ui-switch--disabled{opacity:.5;cursor:not-allowed!important;pointer-events:none}.ui-switch__track{display:inline-flex;align-items:center;position:relative;width:36px;height:20px;background-color:var(--ui-cor-fundo-elevado, #1a1a1e);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .16));border-radius:var(--ui-raio-pill, 999px);box-sizing:border-box;padding:1px;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease;flex-shrink:0}.ui-switch:focus-visible .ui-switch__track,.ui-switch--foco .ui-switch__track{border-color:var(--ui-cor-primaria, #00E08A);box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 25%,transparent)}.ui-switch--checked .ui-switch__track{background-color:var(--ui-cor-primaria, #00E08A);border-color:var(--ui-cor-primaria, #00E08A)}.ui-switch__thumb{display:block;width:16px;height:16px;background-color:#fff;border-radius:50%;box-shadow:var(--ui-sombra-sm, 0 1px 3px rgba(0, 0, 0, .3));transition:transform .2s cubic-bezier(.4,0,.2,1),background-color .2s ease;transform:translate(0)}.ui-switch--checked .ui-switch__thumb{transform:translate(16px);background-color:var(--ui-cor-texto-sobre-primaria, #000000)}.ui-switch--sm .ui-switch__track{width:28px;height:16px;padding:1px}.ui-switch--sm .ui-switch__thumb{width:12px;height:12px}.ui-switch--sm.ui-switch--checked .ui-switch__thumb{transform:translate(12px)}.ui-switch--lg .ui-switch__track{width:44px;height:24px;padding:1px}.ui-switch--lg .ui-switch__thumb{width:20px;height:20px}.ui-switch--lg.ui-switch--checked .ui-switch__thumb{transform:translate(20px)}.ui-switch__label{display:inline-flex;align-items:center;font-size:clamp(11px,.85rem,14px);color:var(--ui-cor-texto, #e1e1e6);line-height:1}.ui-switch--label-esquerda{flex-direction:row-reverse}@media (max-width: 640px){.ui-switch{min-height:40px;padding:4px 0}.ui-switch__label{font-size:14px}}';class f extends d.FormAssociatedElement{constructor(){super();a(this,"containerElement");a(this,"labelElement");a(this,"labelId");a(this,"listeners",new m.ListenerBag);a(this,"_defaultChecked",!1);a(this,"handleClick",t=>{t.preventDefault(),this.alternar()});a(this,"handleHostClick",t=>{h.cliqueVeioDeRotuloExterno(this,t)&&(this.alternar(),this.containerElement.focus())});a(this,"handleKeyDown",t=>{(t.key===" "||t.key==="Enter")&&(t.preventDefault(),this.alternar())});a(this,"handleFocus",()=>{this.containerElement.classList.add("ui-switch--foco")});a(this,"handleBlur",()=>{this.containerElement.classList.remove("ui-switch--foco")});const t=this.attachShadow({mode:"open"});t.innerHTML=`
|
|
46
|
+
<style>${D}</style>
|
|
47
|
+
<div class="ui-switch" part="base" tabindex="0" role="switch" aria-checked="false">
|
|
48
|
+
<span class="ui-switch__track" part="controle">
|
|
49
|
+
<span class="ui-switch__thumb" part="indicador"></span>
|
|
50
|
+
</span>
|
|
51
|
+
<span class="ui-switch__label" part="rotulo" style="display: none;"></span>
|
|
52
|
+
</div>
|
|
53
|
+
`,this.containerElement=t.querySelector(".ui-switch"),this.labelElement=t.querySelector(".ui-switch__label"),this.labelId=h.gerarIdUnico("ui-switch-label"),this.labelElement.id=this.labelId}static get observedAttributes(){return["ativo","ligado","checked","disabled","tamanho","size","label","posicao-label","value","name","obrigatorio","required","mensagem-validacao","aria-label"]}connectedCallback(){this.listeners.cleanup(),this.listeners.add(this.containerElement,"click",this.handleClick),this.listeners.add(this.containerElement,"keydown",this.handleKeyDown),this.listeners.add(this.containerElement,"focus",this.handleFocus),this.listeners.add(this.containerElement,"blur",this.handleBlur),this.listeners.add(this,"click",this.handleHostClick),this._defaultChecked=this.hasAttribute("ativo")||this.hasAttribute("ligado")||this.hasAttribute("checked"),this.syncState()}disconnectedCallback(){this.listeners.cleanup()}attributeChangedCallback(t,e,s){this.syncState()}get ativo(){return this.hasAttribute("ativo")||this.hasAttribute("ligado")||this.hasAttribute("checked")}set ativo(t){t?this.setAttribute("ativo",""):(this.removeAttribute("ativo"),this.removeAttribute("ligado"),this.removeAttribute("checked")),this.syncState()}get checked(){return this.ativo}set checked(t){this.ativo=t}get value(){return this.getAttribute("value")||"on"}set value(t){this.setAttribute("value",t),this.syncState()}get name(){return this.getAttribute("name")||""}set name(t){this.setAttribute("name",t),this.syncState()}get disabled(){return this.hasAttribute("disabled")||this._formDisabled}set disabled(t){t?this.setAttribute("disabled",""):this.removeAttribute("disabled"),this.syncState()}get type(){return"checkbox"}atualizarValidade(){if(!this.internals||typeof this.internals.setValidity!="function")return;if(this.disabled){this.internals.setValidity({});return}if(this._customErrorMessage){this.internals.setValidity({customError:!0},this._customErrorMessage,this.containerElement);return}if((this.hasAttribute("obrigatorio")||this.hasAttribute("required"))&&!this.ativo){const e=this.getAttribute("mensagem-validacao")||"Ative este interruptor para continuar.";this.internals.setValidity({valueMissing:!0},e,this.containerElement);return}this.internals.setValidity({})}alternar(){this.disabled||(this.ativo=!this.ativo,this.dispatchEvent(new CustomEvent("ui-change",{detail:{ativo:this.ativo,value:this.getAttribute("value")||""},bubbles:!0,composed:!0})),this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0})))}syncState(){const t=this.ativo,e=this.disabled,s=this.getAttribute("tamanho")||this.getAttribute("size")||"md",r=this.getAttribute("label"),o=this.getAttribute("posicao-label")||"direita";if(this.containerElement.setAttribute("aria-checked",String(t)),e?(this.containerElement.classList.add("ui-switch--disabled"),this.containerElement.setAttribute("tabindex","-1"),this.containerElement.setAttribute("aria-disabled","true")):(this.containerElement.classList.remove("ui-switch--disabled"),this.containerElement.setAttribute("tabindex","0"),this.containerElement.removeAttribute("aria-disabled")),t?this.containerElement.classList.add("ui-switch--checked"):this.containerElement.classList.remove("ui-switch--checked"),this.containerElement.classList.remove("ui-switch--sm","ui-switch--md","ui-switch--lg"),["sm","md","lg"].includes(s)?this.containerElement.classList.add(`ui-switch--${s}`):this.containerElement.classList.add("ui-switch--md"),o==="esquerda"?this.containerElement.classList.add("ui-switch--label-esquerda"):this.containerElement.classList.remove("ui-switch--label-esquerda"),r)this.labelElement.textContent=r,this.labelElement.style.display="inline",this.containerElement.setAttribute("aria-labelledby",this.labelId),this.containerElement.removeAttribute("aria-label");else{this.labelElement.style.display="none",this.containerElement.removeAttribute("aria-labelledby");const c=h.obterRotuloExterno(this,this.internals);c?this.containerElement.setAttribute("aria-label",c):this.containerElement.removeAttribute("aria-label")}t?this.internals.setFormValue(this.getAttribute("value")||"on"):this.internals.setFormValue(null),this.atualizarValidade()}formResetCallback(){this.ativo=this._defaultChecked,this.syncState()}formStateRestoreCallback(t,e){typeof t=="string"?this.ativo=t===(this.getAttribute("value")||"on"):typeof t=="boolean"&&(this.ativo=t),this.syncState()}}class A extends f{}u.definirCustomElement("ui-switch",f);u.definirCustomElement("ui-toggle",A);exports.ATRIBUTOS_OBSERVADOS_LISTA_FLUTUANTE=v;exports.ListaFlutuantePosicionamento=g;exports.ListaFlutuanteTeclado=x;exports.RadioGrupoRegistry=l;exports.UICheckbox=E;exports.UIListaFlutuante=p;exports.UIRadio=w;exports.UISelect=y;exports.UISwitch=f;exports.UIToggle=A;exports.atualizarEstadoSelecaoLista=k;exports.criarTemplateListaFlutuante=_;exports.renderizarItensLista=b;
|