@thibezer/ui-components-kit 2.17.1 → 2.17.2

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.
Files changed (116) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/camadas.cjs +51 -52
  3. package/dist/camadas.js +136 -135
  4. package/dist/custom-elements.json +4090 -4090
  5. package/package.json +1 -1
  6. package/dist/form-validacao-BIOXxt-1.js +0 -140
  7. package/dist/form-validacao-ytRYSF3E.cjs +0 -1
  8. package/dist/gerencigeo-canvas/layer_defaults.d.ts +0 -3
  9. package/dist/gerencigeo-canvas/layer_instance_ops.d.ts +0 -6
  10. package/dist/gerencigeo-canvas/layer_state_ops.d.ts +0 -6
  11. package/dist/leaflet-DcO7uRC-.cjs +0 -1
  12. package/dist/leaflet-PPDKB6Dd.js +0 -69
  13. package/dist/motor-BCWqlv3e.cjs +0 -1
  14. package/dist/motor-CXjQjVba.js +0 -1386
  15. package/dist/svg-seguro-BsbNQqpd.js +0 -50
  16. package/dist/svg-seguro-C76iLlAZ.cjs +0 -1
  17. package/dist/ui-badge-1UU8vT-b.js +0 -198
  18. package/dist/ui-badge-B5J_c5P5.js +0 -197
  19. package/dist/ui-badge-BxT-sDmV.cjs +0 -28
  20. package/dist/ui-badge-C0eKBI8E.js +0 -183
  21. package/dist/ui-badge-CKKKPdt8.cjs +0 -28
  22. package/dist/ui-badge-DC4y6Dik.cjs +0 -28
  23. package/dist/ui-botao-BOOnP8ds.cjs +0 -12
  24. package/dist/ui-botao-D24oXySA.cjs +0 -12
  25. package/dist/ui-botao-DfqSivHl.js +0 -165
  26. package/dist/ui-botao-Dsj08jjw.js +0 -165
  27. package/dist/ui-botao-OGJV6Vfk.js +0 -165
  28. package/dist/ui-botao-bU_bf6SU.js +0 -166
  29. package/dist/ui-botao-psS1juof.cjs +0 -12
  30. package/dist/ui-botao-xTbH5mpH.cjs +0 -12
  31. package/dist/ui-campo-texto-19tIrmBK.js +0 -377
  32. package/dist/ui-campo-texto-CH8mzX61.cjs +0 -16
  33. package/dist/ui-campo-texto-Cnn2UAkS.cjs +0 -16
  34. package/dist/ui-campo-texto-DVU_sWV1.cjs +0 -16
  35. package/dist/ui-campo-texto-Uu2dJE_0.js +0 -379
  36. package/dist/ui-campo-texto-W5M0gNE4.js +0 -377
  37. package/dist/ui-card-0wu4rjEX.cjs +0 -20
  38. package/dist/ui-card-B86lJXTP.cjs +0 -20
  39. package/dist/ui-card-BYyYxxY1.cjs +0 -20
  40. package/dist/ui-card-C_o5_0cB.js +0 -111
  41. package/dist/ui-card-CojoGXaT.js +0 -144
  42. package/dist/ui-card-DRtpOo3l.js +0 -143
  43. package/dist/ui-controle-cores-B4R6ct4I.js +0 -291
  44. package/dist/ui-controle-cores-BS0WYPdi.js +0 -572
  45. package/dist/ui-controle-cores-Bq_XUrIQ.cjs +0 -32
  46. package/dist/ui-controle-cores-BtA6yzu3.js +0 -291
  47. package/dist/ui-controle-cores-C8um-If9.cjs +0 -32
  48. package/dist/ui-controle-cores-CHMKGemo.cjs +0 -141
  49. package/dist/ui-controle-cores-C_cVXxCn.js +0 -291
  50. package/dist/ui-controle-cores-CuDFS8Y8.cjs +0 -32
  51. package/dist/ui-controle-cores-Dog7ERYv.js +0 -697
  52. package/dist/ui-controle-cores-Er6ZcQ7U.cjs +0 -111
  53. package/dist/ui-linha-BxhEBn27.js +0 -749
  54. package/dist/ui-linha-C306zxWG.cjs +0 -19
  55. package/dist/ui-linha-C_azWkcG.js +0 -517
  56. package/dist/ui-linha-CcalUBDw.cjs +0 -38
  57. package/dist/ui-linha-DAz6DBcl.cjs +0 -38
  58. package/dist/ui-linha-DkxwMhD-.js +0 -749
  59. package/dist/ui-modal-4nU-tXjO.cjs +0 -18
  60. package/dist/ui-modal-BkYvNP0G.js +0 -214
  61. package/dist/ui-modal-BwB9fksp.js +0 -214
  62. package/dist/ui-modal-CUNbpbZ1.cjs +0 -18
  63. package/dist/ui-modal-CvGFGh1h.cjs +0 -18
  64. package/dist/ui-modal-DBOtSTbR.js +0 -238
  65. package/dist/ui-paleta-ferramentas-BXXrI1Y7.js +0 -1233
  66. package/dist/ui-paleta-ferramentas-CEZYcN4J.js +0 -624
  67. package/dist/ui-paleta-ferramentas-CU4icLl0.js +0 -1171
  68. package/dist/ui-paleta-ferramentas-Ccmo-rB5.cjs +0 -21
  69. package/dist/ui-paleta-ferramentas-CsPMTY0G.cjs +0 -21
  70. package/dist/ui-paleta-ferramentas-DLwZHIDv.cjs +0 -21
  71. package/dist/ui-paleta-ferramentas-DNN5i6nL.js +0 -860
  72. package/dist/ui-paleta-ferramentas-Dbj1kBS9.cjs +0 -18
  73. package/dist/ui-paleta-ferramentas-DbwdWVtT.js +0 -1173
  74. package/dist/ui-paleta-ferramentas-bvqxj1Yd.cjs +0 -21
  75. package/dist/ui-segmented-D6b6zxVs.cjs +0 -19
  76. package/dist/ui-segmented-DyF5YLsV.js +0 -418
  77. package/dist/ui-segmented-rn9RxRGM.cjs +0 -19
  78. package/dist/ui-segmented-wUraId2e.js +0 -412
  79. package/dist/ui-seletor-cor-C4U2eqxY.cjs +0 -82
  80. package/dist/ui-seletor-cor-D2_C6Aor.js +0 -391
  81. package/dist/ui-seletor-cor-DPKqf5wb.cjs +0 -82
  82. package/dist/ui-seletor-cor-FYtRccnK.js +0 -396
  83. package/dist/ui-skeleton-B2Rgrv8o.js +0 -648
  84. package/dist/ui-skeleton-DEHwpDqa.js +0 -648
  85. package/dist/ui-skeleton-DI4_9WOX.js +0 -428
  86. package/dist/ui-skeleton-DiOxTBZK.cjs +0 -52
  87. package/dist/ui-skeleton-SPYqku8P.cjs +0 -52
  88. package/dist/ui-skeleton-W9uwIceA.js +0 -585
  89. package/dist/ui-skeleton-elhKIh2B.cjs +0 -33
  90. package/dist/ui-skeleton-sIphhOSx.cjs +0 -52
  91. package/dist/ui-switch-BL-x_-SM.js +0 -1202
  92. package/dist/ui-switch-BcOqOkiV.js +0 -856
  93. package/dist/ui-switch-C0i_3QXu.cjs +0 -66
  94. package/dist/ui-switch-D7iPKDj-.cjs +0 -53
  95. package/dist/ui-switch-DAIgOhqr.cjs +0 -66
  96. package/dist/ui-switch-_F8yubdX.js +0 -1203
  97. package/dist/ui-tabela-propriedades-2bq2nX-b.js +0 -3202
  98. package/dist/ui-tabela-propriedades-8IAYmk3P.cjs +0 -142
  99. package/dist/ui-tabela-propriedades-B8AwlpqL.cjs +0 -141
  100. package/dist/ui-tabela-propriedades-BBr5sqki.cjs +0 -145
  101. package/dist/ui-tabela-propriedades-BecPqC-e.cjs +0 -141
  102. package/dist/ui-tabela-propriedades-BoYXzP5Z.js +0 -3191
  103. package/dist/ui-tabela-propriedades-BokvDD3b.js +0 -2648
  104. package/dist/ui-tabela-propriedades-Boy7I5yW.js +0 -2412
  105. package/dist/ui-tabela-propriedades-C-PeuW1i.cjs +0 -141
  106. package/dist/ui-tabela-propriedades-C5YYnod1.js +0 -3053
  107. package/dist/ui-tabela-propriedades-CnfW9DZG.cjs +0 -142
  108. package/dist/ui-tabela-propriedades-CyPyKXtB.js +0 -3013
  109. package/dist/ui-tabela-propriedades-DWOKznMN.cjs +0 -142
  110. package/dist/ui-tabela-propriedades-Df9ajC6M.js +0 -2648
  111. package/dist/ui-tabela-propriedades-DqvPilK_.cjs +0 -142
  112. package/dist/ui-tabela-propriedades-DuaC4sFX.js +0 -2767
  113. package/dist/ui-toast-Bp_NlM5G.js +0 -156
  114. package/dist/ui-toast-DGTZKne5.cjs +0 -20
  115. package/dist/zero-js-triggers-C_KrvFOQ.js +0 -244
  116. package/dist/zero-js-triggers-C_gtaojZ.cjs +0 -1
@@ -1,141 +0,0 @@
1
- "use strict";var pt=Object.defineProperty;var ht=(t,r,e)=>r in t?pt(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e;var b=(t,r,e)=>ht(t,typeof r!="symbol"?r+"":r,e);const H=require("./listener-bag-D5omxZ9h.cjs"),mt=require("./parts-vQa2873h.cjs"),$=require("./ssr-safe-CiHD1adl.cjs"),bt=require("./svg-seguro-J2RM1Ssf.cjs");class me{constructor(r){b(this,"autoFetchController",null);b(this,"emVoo",null);this.ctx=r}carregar(r){if(!r)return Promise.resolve(!1);if(this.emVoo&&this.emVoo.url===r&&this.autoFetchController)return this.emVoo.promessa;this.cancelarEmVoo();const e=new AbortController;this.autoFetchController=e;const o=this.executar(r,e);return this.emVoo={url:r,promessa:o},o}emitir(r,e){this.ctx.host.dispatchEvent(new CustomEvent(r,{bubbles:!0,composed:!0,detail:e}))}erro(r,e,o,i){const a=e instanceof Error?e.message:String(e);console.error("[ui-tabela] Erro ao carregar dados remotos:",e);const n={url:r,erro:a,origem:o};i!==void 0&&(n.status=i),this.emitir("ui-fetch-erro",n)}async executar(r,e){var l,d,c,s;const o=()=>this.autoFetchController===e,i=()=>{this.autoFetchController===e&&(this.autoFetchController=null,this.emVoo=null)};this.ctx.onCarregandoAlterado(!0),this.emitir("ui-fetch-start",{url:r});let a="rede",n;try{const u={...((d=(l=this.ctx).getOpcoes)==null?void 0:d.call(l))??{},signal:e.signal},h=await(((s=(c=this.ctx).getFetcher)==null?void 0:s.call(c))??((g,v)=>fetch(g,v)))(r,u);if(!h.ok)throw a="http",n=h.status,new Error(`HTTP ${h.status}: ${h.statusText}`);a="json";const m=await h.json(),x=Array.isArray(m)?m:(m==null?void 0:m.dados)||(m==null?void 0:m.items)||(m==null?void 0:m.data)||(m==null?void 0:m.rows)||[],f=Array.isArray(x)?x:[];return o()?(a="render",this.ctx.onDadosRecebidos(f),i(),this.ctx.onCarregandoAlterado(!1),this.emitir("ui-fetch-sucesso",{url:r,total:f.length,dados:f}),!0):!1}catch(u){return(u==null?void 0:u.name)==="AbortError"?(o()&&(i(),this.ctx.onCarregandoAlterado(!1)),this.emitir("ui-fetch-cancelado",{url:r}),!1):(o()&&(i(),this.ctx.onCarregandoAlterado(!1),this.erro(r,u,a,n)),!1)}}abortar(){this.autoFetchController&&(this.cancelarEmVoo(),this.ctx.onCarregandoAlterado(!1))}cancelarEmVoo(){if(this.autoFetchController){const r=this.autoFetchController;this.autoFetchController=null,this.emVoo=null,r.abort()}}}const ft=["id","_id","codigo","key"];function gt(t,r){return t!=null&&(t===r||String(t)===String(r))}function Y(t,r){let e=-1;return typeof t=="number"&&Number.isInteger(t)?e=t:typeof t=="string"&&/^\d+$/.test(t.trim())&&(e=parseInt(t.trim(),10)),e>=0&&e<r?e:-1}function be(t,r,e="id",o=!1){if(!t||t.length===0)return-1;if(typeof r=="function")return t.findIndex(r);if(o)return Y(r,t.length);const i=[e,...ft.filter(a=>a!==e)];for(const a of i){const n=t.findIndex(l=>!!l&&typeof l=="object"&&gt(l[a],r));if(n!==-1)return n}return Y(r,t.length)}class fe{constructor(r){b(this,"itemSelecionado",null);b(this,"indiceSelecionado",null);this.ctx=r}indiceDoItem(r,e){const o=this.ctx.getChaveId(),i=r.indexOf(e);return i>=0?i:e[o]==null?-1:r.findIndex(a=>(a==null?void 0:a[o])!=null&&String(a[o])===String(e[o]))}getItemSelecionado(){return this.itemSelecionado}setItemSelecionado(r){this.itemSelecionado=r;const e=r?this.indiceDoItem(this.ctx.getDadosExibicao(),r):-1;this.indiceSelecionado=e>=0?e:null,this.atualizarLinhasSelecionadas()}getIndiceSelecionado(){return this.indiceSelecionado}setIndiceSelecionado(r){const e=this.ctx.getDadosExibicao(),o=r!==null&&r>=0&&r<e.length;this.indiceSelecionado=o?r:null,this.itemSelecionado=o?e[r]:null,this.atualizarLinhasSelecionadas()}reconciliar(){const r=this.itemSelecionado;if(!r){this.indiceSelecionado=null;return}const e=this.ctx.getDadosExibicao(),o=this.indiceDoItem(e,r);if(o>=0){this.indiceSelecionado=o,this.substituirReferencia(r,e[o]);return}this.indiceSelecionado=null;const i=this.ctx.getDadosOriginais(),a=this.indiceDoItem(i,r);if(a>=0){this.substituirReferencia(r,i[a]);return}this.itemSelecionado=null,this.ctx.host.dispatchEvent(new CustomEvent("ui-selecao-removida",{bubbles:!0,composed:!0,detail:{item:r}}))}substituirReferencia(r,e){this.itemSelecionado=e,r!==e&&this.ctx.host.dispatchEvent(new CustomEvent("ui-selecao-atualizada",{bubbles:!0,composed:!0,detail:{item:e,anterior:r}}))}limparSelecao(){this.itemSelecionado=null,this.indiceSelecionado=null,this.atualizarLinhasSelecionadas()}isItemSelecionado(r,e){if(this.itemSelecionado){if(this.itemSelecionado===r)return!0;const o=this.ctx.getChaveId();if(r[o]!=null&&this.itemSelecionado[o]!=null)return String(r[o])===String(this.itemSelecionado[o]);if(r.id!=null&&this.itemSelecionado.id!=null)return String(r.id)===String(this.itemSelecionado.id)}return this.indiceSelecionado!==null&&this.indiceSelecionado===e}atualizarLinhasSelecionadas(){const r=this.ctx.getTbody();if(!r)return;const e=this.ctx.getDadosExibicao();r.querySelectorAll("tr:not(.ui-tabela__virtual-spacer)").forEach(i=>{const a=i.getAttribute("data-index"),n=a!==null?parseInt(a,10):-1,l=n>=0?e[n]:null,d=l?this.isItemSelecionado(l,n):!1;i.classList.toggle("ui-tabela__tr--selecionada",d),mt.alternarPart(i,"linha-selecionada",d),d?(i.setAttribute("data-selecionada","true"),i.setAttribute("aria-current","true"),i.setAttribute("aria-selected","true")):(i.removeAttribute("data-selecionada"),i.removeAttribute("aria-current"),i.setAttribute("aria-selected","false"))})}rolarPara(r,e){const o=this.ctx.getDadosExibicao(),i=be(o,r,this.ctx.getChaveId(),(e==null?void 0:e.porIndice)===!0);if(i===-1)return!1;if(e!=null&&e.selecionar){const a=o[i];this.itemSelecionado=a,this.indiceSelecionado=i,this.atualizarLinhasSelecionadas(),this.ctx.onLinhaAtiva(i),this.ctx.host.dispatchEvent(new CustomEvent("ui-linha-selecionada",{bubbles:!0,composed:!0,detail:{item:a,indice:i}}))}return this.ctx.onRolarParaIndice(i,(e==null?void 0:e.comportamento)||"smooth")}}function ge(t,r,e){return t!==e?{idColuna:e,direcao:"asc"}:r==="asc"?{idColuna:e,direcao:"desc"}:r==="desc"?{idColuna:null,direcao:"original"}:{idColuna:e,direcao:"asc"}}const xt=new Intl.Collator("pt-BR",{numeric:!0,sensitivity:"base"});function de(t){if(t instanceof Date)return t.getTime();if(typeof t=="number")return t;const r=String(t).trim(),e=/^(\d{1,2})\/(\d{1,2})\/(\d{4})(?:[ T](\d{1,2}):(\d{2}))?$/.exec(r);return e?new Date(+e[3],+e[2]-1,+e[1],+(e[4]??0),+(e[5]??0)).getTime():Date.parse(r)}function _t(t,r,e){if(e==="data"||!e&&(t instanceof Date||r instanceof Date)){const o=de(t),i=de(r);if(!Number.isNaN(o)&&!Number.isNaN(i))return o-i}else if(e==="numero"||!e&&typeof t=="number"&&typeof r=="number"){const o=Number(t),i=Number(r);if(!Number.isNaN(o)&&!Number.isNaN(i))return o-i}else if(e==="booleano"||!e&&typeof t=="boolean"&&typeof r=="boolean")return+!!t-+!!r;return xt.compare(String(t),String(r))}function xe(t,r,e,o){if(!r||e==="original")return[...t];const i=e==="desc"?-1:1;return[...t].sort((a,n)=>{const l=a[r],d=n[r],c=l==null,s=d==null;return c||s?c===s?0:c?1:-1:o!=null&&o.comparador?o.comparador(l,d,a,n)*i:l===d?0:_t(l,d,o==null?void 0:o.tipo)*i})}function V(t){return t.normalize("NFD").replace(/[̀-ͯ]/g,"").toLowerCase()}class _e{constructor(){b(this,"dadosOriginais",[]);b(this,"dadosExibicao",[]);b(this,"colunaOrdenada",null);b(this,"direcaoOrdenacao","original");b(this,"ultimoFiltro","");b(this,"colunasFiltro",[]);b(this,"colunas",[]);b(this,"ordenacaoRemota",!1)}setColunas(r){this.colunas=r,this.colunaOrdenada&&this.aplicarOrdenacao()}setOrdenacaoRemota(r){this.ordenacaoRemota!==r&&(this.ordenacaoRemota=r,this.aplicarOrdenacao())}restaurarOrdenacao(r,e){this.colunaOrdenada=r,this.direcaoOrdenacao=e,this.aplicarOrdenacao()}setColunasFiltro(r){this.colunasFiltro=r,this.ultimoFiltro&&this.aplicarOrdenacao()}getDadosOriginais(){return this.dadosOriginais}setDadosOriginais(r){this.dadosOriginais=Array.isArray(r)?r.filter(e=>e!=null):[],this.aplicarOrdenacao()}getDadosExibicao(){return this.dadosExibicao}getColunaOrdenada(){return this.colunaOrdenada}setColunaOrdenada(r){this.colunaOrdenada=r,r?this.direcaoOrdenacao==="original"&&(this.direcaoOrdenacao="asc"):this.direcaoOrdenacao="original",this.aplicarOrdenacao()}getDirecaoOrdenacao(){return this.direcaoOrdenacao}setDirecaoOrdenacao(r){this.direcaoOrdenacao=r||"original",this.direcaoOrdenacao==="original"&&(this.colunaOrdenada=null),this.aplicarOrdenacao()}alternarOrdenacaoColuna(r){if(!r.ordenavel)return null;const e=ge(this.colunaOrdenada,this.direcaoOrdenacao,r.id);return this.colunaOrdenada=e.idColuna,this.direcaoOrdenacao=e.direcao,this.aplicarOrdenacao(),e}aplicarOrdenacao(){const r=this.ultimoFiltro,e=r?this.dadosOriginais.filter(i=>this.casaFiltro(i,r)):this.dadosOriginais,o=this.colunaOrdenada?this.colunas.find(i=>i.id===this.colunaOrdenada):null;this.dadosExibicao=this.ordenacaoRemota?[...e]:xe(e,this.colunaOrdenada,this.direcaoOrdenacao,o)}casaFiltro(r,e){return(this.colunasFiltro.length>0?this.colunasFiltro:Object.keys(r)).some(i=>{const a=r[i],n=this.colunas.find(d=>d.id===i);if(n!=null&&n.textoFiltro)try{if(V(String(n.textoFiltro(a,r)??"")).includes(e))return!0}catch{}if(a==null||typeof a=="object"&&!(a instanceof Date))return!1;const l=a instanceof Date?`${a.toISOString()} ${a.toLocaleDateString("pt-BR")}`:String(a);return V(l).includes(e)})}temFiltro(){return this.ultimoFiltro!==""}filtrar(r){this.ultimoFiltro=V((r||"").trim()),this.aplicarOrdenacao()}}const vt=':host{display:block;width:100%;box-sizing:border-box;font-family:inherit;color:var(--ui-cor-texto, #e1e1e6);position:relative}.ui-tabela-container{width:100%;max-width:100%;max-height:var(--ui-tabela-max-height, 500px);overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));border-radius:var(--ui-raio-borda, 6px);background-color:var(--ui-cor-superficie, #141417);box-sizing:border-box;position:relative}.ui-tabela{width:100%;border-collapse:separate;border-spacing:0;text-align:left;font-size:14px;font-family:var(--ui-fonte-base, inherit);font-variant-numeric:tabular-nums}.ui-tabela thead{background-color:var(--ui-cor-fundo-elevado, #1a1a1e)}.ui-tabela th{position:sticky;top:0;z-index:10;padding:10px 16px;background-color:var(--ui-cor-fundo-elevado, #1a1a1e);color:var(--ui-cor-texto-secundario, #9696a6);font-size:13px;font-weight:600;letter-spacing:.02em;border-bottom:2px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));white-space:nowrap;-webkit-user-select:none;user-select:none;box-sizing:border-box}.ui-tabela th[aria-sort=ascending],.ui-tabela th[aria-sort=descending]{color:var(--ui-cor-texto, #e1e1e6)}.ui-tabela__resizer{position:absolute;top:0;right:0;width:8px;height:100%;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none;z-index:20;background:linear-gradient(var(--ui-cor-borda, rgba(255, 255, 255, .12)),var(--ui-cor-borda, rgba(255, 255, 255, .12))) center / 1px 60% no-repeat;transition:background-color .15s ease}.ui-tabela__resizer:hover,.ui-tabela__resizer:focus-visible,.ui-tabela__resizer--ativo{background:var(--ui-cor-primaria, #00E08A);outline:none}:host([densidade="compacta"]) th,:host([densidade="compacta"]) td,:host([density="compact"]) th,:host([density="compact"]) td{padding:4px 8px}:host([densidade="normal"]) th,:host([densidade="normal"]) td,:host([density="normal"]) th,:host([density="normal"]) td{padding:10px 16px}:host([densidade="relaxada"]) th,:host([densidade="relaxada"]) td,:host([density="relaxed"]) th,:host([density="relaxed"]) td{padding:16px 20px}:host([altura-linha]) td,:host([row-height]) td{height:var(--ui-tabela-altura-linha);box-sizing:border-box;padding-top:0;padding-bottom:0;overflow:hidden;white-space:nowrap}.ui-tabela__header-content{display:inline-flex;align-items:center;vertical-align:middle;width:100%;box-sizing:border-box}.ui-tabela__header-text{margin-right:var(--ui-tabela-th-gap, 6px);display:inline-block;min-width:0;overflow:hidden;text-overflow:ellipsis}.ui-tabela__sort-icon{width:var(--ui-tabela-th-icone, 16px);min-width:var(--ui-tabela-th-icone, 16px);flex:none;display:inline-flex;justify-content:center;align-items:center}.ui-tabela th.ui-tabela__th--ordenavel{cursor:pointer}@media (hover: hover){.ui-tabela th.ui-tabela__th--ordenavel:hover{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 8%,var(--ui-cor-fundo-elevado, #1a1a1e));color:var(--ui-cor-texto, #e1e1e6)}}.ui-tabela__ordenar{all:unset;display:flex;width:100%;box-sizing:border-box;cursor:pointer;font:inherit;color:inherit;text-align:inherit}.ui-tabela__ordenar:focus-visible{outline:2px solid var(--ui-cor-primaria, #00E08A);outline-offset:2px;border-radius:var(--ui-raio-sm, 4px)}.ui-tabela tbody tr:focus{outline:none}.ui-tabela tbody tr:focus-visible{outline:2px solid var(--ui-tabela-cor-foco, var(--ui-cor-texto, #e1e1e6));outline-offset:-2px;background-color:var(--ui-tabela-hover, color-mix(in srgb, var(--ui-cor-texto, #e1e1e6) 8%, transparent))}.ui-tabela__sort-arrow{display:inline-block;width:14px;height:14px;vertical-align:middle;shape-rendering:geometricPrecision;fill:var(--ui-cor-primaria, #00E08A)}.ui-tabela__sort-arrow path{transition:opacity .15s ease;opacity:.35}.ui-tabela__sort-arrow--asc .seta-cima,.ui-tabela__sort-arrow--desc .seta-baixo{opacity:1}.ui-tabela__sort-arrow--inativo{fill:var(--ui-cor-texto-secundario, #9696a6)}.ui-tabela__sort-arrow--inativo path{opacity:.6}.ui-tabela td{padding:10px 16px;border-bottom:1px solid color-mix(in srgb,var(--ui-cor-borda, rgba(255, 255, 255, .12)) 60%,transparent);white-space:nowrap;vertical-align:middle;color:var(--ui-cor-texto, #e1e1e6);box-sizing:border-box}.ui-tabela__cell-content{display:inline-flex;align-items:center;vertical-align:middle}.ui-tabela__cell-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.ui-tabela--alinhar-esquerda{text-align:left}.ui-tabela--alinhar-esquerda .ui-tabela__header-content,.ui-tabela--alinhar-esquerda .ui-tabela__cell-content{justify-content:flex-start}.ui-tabela--alinhar-centro{text-align:center}.ui-tabela--alinhar-centro .ui-tabela__header-content,.ui-tabela--alinhar-centro .ui-tabela__cell-content{justify-content:center}.ui-tabela--alinhar-direita{text-align:right}.ui-tabela--alinhar-direita .ui-tabela__header-content,.ui-tabela--alinhar-direita .ui-tabela__cell-content{justify-content:flex-end}.ui-tabela tbody tr[data-index]{cursor:pointer}.ui-tabela tbody tr.ui-tabela__tr--par{background-color:var(--ui-tabela-zebra, color-mix(in srgb, var(--ui-cor-texto, #e1e1e6) 4%, transparent))}@media (hover: hover){.ui-tabela tbody tr[data-index]:hover{background-color:var(--ui-tabela-hover, color-mix(in srgb, var(--ui-cor-texto, #e1e1e6) 8%, transparent))}}.ui-tabela tbody tr[data-index]:active{background-color:var(--ui-tabela-hover, color-mix(in srgb, var(--ui-cor-texto, #e1e1e6) 12%, transparent))}:host(:not([selecionar-texto])) .ui-tabela tbody td{-webkit-user-select:none;user-select:none}.ui-tabela tbody tr.ui-tabela__tr--selecionada,.ui-tabela tbody tr[data-selecionada=true]{background-color:var(--ui-tabela-selecionada, var(--ui-cor-linha-selecionada, color-mix(in srgb, var(--ui-cor-primaria, #00E08A) 14%, transparent)))}.ui-tabela tbody tr.ui-tabela__tr--selecionada td:first-child,.ui-tabela tbody tr[data-selecionada=true] td:first-child{box-shadow:inset 3px 0 0 var(--ui-cor-primaria, #00E08A)}@media (hover: hover){.ui-tabela tbody tr.ui-tabela__tr--selecionada:hover,.ui-tabela tbody tr[data-selecionada=true]:hover{background-color:var(--ui-tabela-selecionada-hover, var(--ui-cor-linha-selecionada-hover, color-mix(in srgb, var(--ui-cor-primaria, #00E08A) 22%, transparent)))}}.ui-tabela__virtual-spacer td{padding:0!important;border:none!important;height:inherit;background:transparent!important}.ui-tabela__empty{padding:40px 24px;text-align:center;color:var(--ui-cor-texto-secundario, #9696a6);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;box-sizing:border-box}.ui-tabela__empty-icon{width:32px;height:32px;opacity:.5;fill:currentColor}.ui-tabela__empty-text{font-size:14px;font-weight:500;color:var(--ui-cor-texto-secundario, #9696a6)}.ui-tabela__erro{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px;padding:10px 14px;border:1px solid var(--ui-cor-texto-erro, #ff5555);border-left-width:4px;border-radius:var(--ui-raio-borda, 6px);background:color-mix(in srgb,var(--ui-cor-texto-erro, #ff5555) 10%,transparent);color:var(--ui-cor-texto, #e1e1e6);font-size:14px;box-sizing:border-box}.ui-tabela__erro-texto{flex:1 1 200px;min-width:0}.ui-tabela__erro-detalhe{display:block;margin-top:2px;font-size:12px;color:var(--ui-cor-texto-secundario, #9696a6);overflow-wrap:anywhere}.ui-tabela__erro-acao,.ui-tabela__prompt-actions button{background:var(--ui-cor-botao-secundario-fundo, rgba(255, 255, 255, .12));color:var(--ui-cor-texto, #e1e1e6);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));padding:6px 12px;border-radius:var(--ui-raio-sm, 4px);font:inherit;cursor:pointer}.ui-tabela__erro-acao:hover,.ui-tabela__prompt-actions button:hover{background:var(--ui-cor-botao-secundario-hover, rgba(255, 255, 255, .2))}.ui-tabela__erro-acao:focus-visible,.ui-tabela__prompt-actions button:focus-visible,.ui-tabela__prompt-dialog input:focus-visible{outline:2px solid var(--ui-cor-primaria, #00E08A);outline-offset:2px}.ui-tabela__sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.ui-tabela__loading{position:absolute;top:0;left:0;right:0;bottom:0;background-color:color-mix(in srgb,var(--ui-cor-superficie, #141417) 72%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:50;color:var(--ui-cor-texto, #e1e1e6);font-size:14px}.ui-tabela__spinner{width:32px;height:32px;border:3px solid color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 15%,transparent);border-top-color:var(--ui-cor-primaria, #00E08A);border-radius:50%;animation:ui-tabela-spin .8s linear infinite}@keyframes ui-tabela-spin{to{transform:rotate(360deg)}}.ui-tabela__prompt-dialog{margin:0;max-width:calc(100vw - 16px);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .2));border-radius:var(--ui-raio-borda, 6px);background-color:var(--ui-cor-fundo-elevado, #1a1a1e);color:var(--ui-cor-texto, #e1e1e6);padding:12px;box-shadow:var(--ui-sombra-lg, 0 8px 32px rgba(0, 0, 0, .8));font-family:inherit;font-size:14px}.ui-tabela__prompt-dialog::backdrop{background:#0000004d}.ui-tabela__prompt-title{display:block;margin-bottom:8px;font-weight:500}.ui-tabela__prompt-dialog input{width:100%;padding:6px 8px;border-radius:var(--ui-raio-sm, 4px);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .2));background:var(--ui-cor-superficie, #141417);color:var(--ui-cor-texto, #e1e1e6);margin-bottom:8px;box-sizing:border-box;font:inherit}.ui-tabela__prompt-dialog input[aria-invalid=true]{border-color:var(--ui-cor-texto-erro, #ff5555)}.ui-tabela__prompt-erro{min-height:1.2em;margin-bottom:8px;font-size:12px;color:var(--ui-cor-texto-erro, #ff5555)}.ui-tabela__prompt-actions{display:flex;justify-content:flex-end;gap:8px}.ui-tabela__prompt-actions button:last-child{background:var(--ui-cor-primaria, #00E08A);border-color:transparent;color:var(--ui-cor-texto-sobre-primaria, #000000);font-weight:600}.ui-tabela__prompt-actions button:last-child:hover{background:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 85%,var(--ui-cor-texto, #e1e1e6))}@media (pointer: coarse){.ui-tabela__resizer{width:16px}:host(:not([altura-linha]):not([row-height])) .ui-tabela tbody tr[data-index]{height:44px}}@media (max-width: 640px){.ui-tabela th{padding:8px 10px;font-size:12px}.ui-tabela td{padding:8px 10px;font-size:13px}}@media (prefers-reduced-motion: reduce){.ui-tabela__resizer,.ui-tabela__sort-arrow path{transition:none}.ui-tabela__spinner{animation-duration:2.4s}}';function ee(t){return t==null||t===""?"":typeof t=="number"?`${t}px`:t}function te(t){return t==="centro"||t==="center"?"ui-tabela--alinhar-centro":t==="direita"||t==="right"?"ui-tabela--alinhar-direita":"ui-tabela--alinhar-esquerda"}function re(t){return t==="centro"||t==="center"?"center":t==="direita"||t==="right"?"right":"left"}function K(t){return t==="compacta"?30:t==="relaxada"?56:42}function ve(t,r,e,o){t.innerHTML=`<style>${vt}</style>`;const i=document.createElement("div");i.className="ui-tabela-container",i.setAttribute("part","base"),e&&(i.style.maxHeight=e);const a=document.createElement("div");a.className="ui-tabela__empty",a.setAttribute("part","vazio"),a.style.display="none",a.setAttribute("role","status");const n=document.createElement("div");n.innerHTML=`
2
- <svg class="ui-tabela__empty-icon" aria-hidden="true" focusable="false" viewBox="0 0 24 24">
3
- <path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V5h14v14zM7 10h2v7H7zm4-3h2v10h-2zm4 6h2v4h-2z"/>
4
- </svg>`;const l=document.createElement("span");l.className="ui-tabela__empty-text",l.textContent=r,a.appendChild(n),a.appendChild(l);const d=document.createElement("table");d.className="ui-tabela",d.setAttribute("part","tabela"),d.setAttribute("role","grid");const c=document.createElement("colgroup"),s=document.createElement("thead"),u=document.createElement("tbody");d.appendChild(c),d.appendChild(s),d.appendChild(u);const p=document.createElement("div");p.className="ui-tabela__erro",p.setAttribute("part","erro"),p.setAttribute("role","alert"),p.style.display="none";const h=document.createElement("div");h.className="ui-tabela__erro-texto";const m=document.createElement("span");m.className="ui-tabela__erro-mensagem";const x=document.createElement("span");x.className="ui-tabela__erro-detalhe",h.appendChild(m),h.appendChild(x);const f=document.createElement("button");f.type="button",f.className="ui-tabela__erro-acao",f.setAttribute("part","erro-acao"),f.textContent="Tentar novamente",p.appendChild(h),p.appendChild(f);const g=document.createElement("div");g.className="ui-tabela__sr",g.setAttribute("role","status"),g.setAttribute("aria-live","polite"),i.appendChild(p),i.appendChild(d),i.appendChild(a),i.appendChild(g);const v=document.createElement("div");return v.className="ui-tabela__loading",v.setAttribute("part","carregando"),v.setAttribute("role","status"),v.setAttribute("aria-live","polite"),v.style.display=o?"flex":"none",v.innerHTML=`
5
- <div class="ui-tabela__spinner" aria-hidden="true"></div>
6
- <span class="ui-tabela__loading-texto">Carregando dados...</span>
7
- `,i.appendChild(v),t.appendChild(i),{containerElement:i,tableElement:d,theadElement:s,tbodyElement:u,colgroupElement:c,emptyElement:a,loadingElement:v,erroElement:p,anuncioElement:g}}function Ee(t){var a,n;if(!t.theadElement||!t.colgroupElement)return;t.headerListeners.cleanup();const e=t.theadElement.getRootNode().activeElement,o=e&&t.theadElement.contains(e)?((a=e.closest("th"))==null?void 0:a.getAttribute("data-coluna"))??null:null;t.theadElement.innerHTML="",t.colgroupElement.innerHTML="";const i=document.createElement("tr");if(i.setAttribute("aria-rowindex","1"),t.colunas.forEach((l,d)=>{const c=document.createElement("col");l.largura!==void 0&&(c.style.width=t.formatWidth(l.largura)),t.colgroupElement.appendChild(c);const s=document.createElement("th"),u=t.getAlignmentClass(l.alinhamento);if(s.className=u,s.setAttribute("part","celula-cabecalho"),s.scope="col",s.setAttribute("data-coluna",l.id),s.style.textAlign=t.getTextAlign(l.alinhamento),l.largura!==void 0&&(s.style.width=t.formatWidth(l.largura)),l.larguraMinima!==void 0&&(s.style.minWidth=t.formatWidth(l.larguraMinima)),l.larguraMaxima!==void 0){const _=t.formatWidth(l.larguraMaxima);s.style.maxWidth=_,s.style.overflow="hidden",s.style.textOverflow="ellipsis",s.style.whiteSpace="nowrap"}l.tooltip&&(s.title=l.tooltip);const p=!!l.ordenavel&&t.colunaOrdenada===l.id&&t.direcaoOrdenacao!=="original",h=p&&t.direcaoOrdenacao==="desc";if(l.ordenavel){s.classList.add("ui-tabela__th--ordenavel");const _=()=>t.onHeaderClick(l);t.headerListeners.add(s,"click",_),s.setAttribute("aria-sort",p?h?"descending":"ascending":"none")}const m=_=>t.onHeaderContextMenu(_,l,d,s);t.headerListeners.add(s,"contextmenu",m);const x=document.createElement("div");x.className="ui-tabela__header-content";const f=document.createElement("span");if(f.className="ui-tabela__header-text",f.textContent=l.rotulo,x.appendChild(f),l.ordenavel){const _=document.createElement("span");_.className="ui-tabela__sort-icon";const E=p?h?"ui-tabela__sort-arrow--desc":"ui-tabela__sort-arrow--asc":"ui-tabela__sort-arrow--inativo";_.setAttribute("aria-hidden","true"),_.innerHTML=`<svg class="ui-tabela__sort-arrow ${E}" viewBox="0 0 24 24" focusable="false"><path class="seta-cima" d="M7 11l5-5 5 5H7z"/><path class="seta-baixo" d="M7 13l5 5 5-5H7z"/></svg>`,x.appendChild(_)}if(l.ordenavel){const _=document.createElement("button");_.type="button",_.className="ui-tabela__ordenar",_.setAttribute("part","ordenar"),_.appendChild(x),s.appendChild(_)}else s.appendChild(x);const g=document.createElement("div");g.className="ui-tabela__resizer",g.setAttribute("part","redimensionador"),g.title="Arrastar para redimensionar largura (duplo-clique para auto-ajuste)",g.tabIndex=0,g.setAttribute("role","separator"),g.setAttribute("aria-orientation","vertical"),g.setAttribute("aria-label",`Redimensionar coluna ${l.rotulo}`);const v=_=>t.onInitColumnResize(_,l,d,s,g);t.headerListeners.add(g,"mousedown",v);const y=_=>{const E=_;E.pointerType==="mouse"||!E.pointerType||t.onInitColumnResize(E,l,d,s,g)};t.headerListeners.add(g,"pointerdown",y);const k=_=>{var R,N;const E=_,I=E.shiftKey?50:10;if(E.key==="ArrowRight")E.preventDefault(),(R=t.onResizeTeclado)==null||R.call(t,I,l,d,s,c);else if(E.key==="ArrowLeft")E.preventDefault(),(N=t.onResizeTeclado)==null||N.call(t,-I,l,d,s,c);else if(E.key==="Enter"||E.key==="F2"){E.preventDefault();const A=s.getBoundingClientRect();t.onHeaderContextMenu(new MouseEvent("contextmenu",{clientX:A.left,clientY:A.bottom}),l,d,s)}};t.headerListeners.add(g,"keydown",k);const w=_=>{_.stopPropagation(),t.onColumnAutoFit(l,s,c)};t.headerListeners.add(g,"dblclick",w),t.headerListeners.add(g,"click",_=>_.stopPropagation()),s.appendChild(g),i.appendChild(s)}),t.theadElement.appendChild(i),o!==null){const l=Array.from(i.children).find(d=>d.getAttribute("data-coluna")===o);(n=l==null?void 0:l.querySelector(".ui-tabela__ordenar"))==null||n.focus()}}const Et='button, input, select, textarea, a, summary, [role="button"], [data-prevent-select]';function yt(t,r){for(const e of t.composedPath()){if(e===r)return!1;if(e instanceof Element&&e.matches(Et))return!0}return!1}function ye(t){if(!t.tbodyElement||!t.tableElement||!t.emptyElement||!t.containerElement)return;if(t.tableElement.setAttribute("aria-colcount",String(t.colunas.length)),!t.dadosExibicao||t.dadosExibicao.length===0){t.tbodyElement.innerHTML="",t.tableElement.setAttribute("aria-rowcount","1"),t.tableElement.style.display=t.colunas.length>0?"table":"none",t.emptyElement.style.display="flex";const p=t.emptyElement.querySelector(".ui-tabela__empty-text"),h=t.filtroAtivo?t.textoSemResultados:t.textoVazio;p&&h!==void 0&&(p.textContent=h);return}t.emptyElement.style.display="none",t.tableElement.style.display="table",t.tableElement.setAttribute("aria-rowcount",String(t.dadosExibicao.length+1));const r=t.dadosExibicao.length,e=t.rowHeight,o=t.virtualizar&&r>30;let i=0,a=r;if(o){const p=t.containerElement.scrollTop,h=t.containerElement.clientHeight||400,m=5;i=Math.max(0,Math.floor(p/e)-m),a=Math.min(r,Math.ceil((p+h)/e)+m)}const l=t.tbodyElement.getRootNode().activeElement,d=l&&l.parentElement===t.tbodyElement?l.getAttribute("data-index"):null,c=t.indiceAtivo??null,s=c!==null&&c>=i&&c<a?c:i;t.tbodyElement.innerHTML="";const u=document.createDocumentFragment();if(o&&i>0){const p=document.createElement("tr");p.className="ui-tabela__virtual-spacer",p.setAttribute("aria-hidden","true"),p.style.height=`${i*e}px`;const h=document.createElement("td");h.colSpan=t.colunas.length||1,p.appendChild(h),u.appendChild(p)}for(let p=i;p<a;p++){const h=t.dadosExibicao[p],m=document.createElement("tr");m.setAttribute("data-index",String(p)),m.setAttribute("part","linha"),m.setAttribute("aria-rowindex",String(p+2)),m.setAttribute("aria-selected","false"),m.tabIndex=p===s?0:-1,p%2===1&&m.classList.add("ui-tabela__tr--par");const x=t.chaveId;h[x]!==void 0?m.setAttribute("data-id",String(h[x])):h.id!==void 0?m.setAttribute("data-id",String(h.id)):h._id!==void 0&&m.setAttribute("data-id",String(h._id)),t.isItemSelecionado(h,p)&&(m.classList.add("ui-tabela__tr--selecionada"),m.setAttribute("part","linha linha-selecionada"),m.setAttribute("aria-current","true"),m.setAttribute("aria-selected","true"),m.setAttribute("data-selecionada","true")),m.addEventListener("click",f=>{yt(f,m)||t.onLinhaClique(h,p)}),t.colunas.forEach(f=>{const g=document.createElement("td"),v=t.getAlignmentClass(f.alinhamento);if(g.className=v,g.setAttribute("part","celula"),g.style.textAlign=t.getTextAlign(f.alinhamento),f.larguraMaxima!==void 0){const w=t.formatWidth(f.larguraMaxima);g.style.maxWidth=w,g.style.overflow="hidden",g.style.textOverflow="ellipsis",g.style.whiteSpace="nowrap"}const y=document.createElement("div");y.className="ui-tabela__cell-content",f.larguraMaxima!==void 0&&y.classList.add("ui-tabela__cell-truncate");const k=h[f.id];if(typeof f.render=="function")try{const w=f.render(k,h,p);w instanceof Node?y.appendChild(w):y.textContent=String(w??"")}catch(w){console.error(`[ui-tabela] Erro no render da coluna "${f.id}" (linha ${p}):`,w),y.textContent=""}else if(k instanceof Node)y.appendChild(k);else{const w=k!=null?String(k):"";y.textContent=w,f.larguraMaxima!==void 0&&!f.tooltip&&(g.title=w)}g.appendChild(y),m.appendChild(g)}),u.appendChild(m)}if(o&&a<r){const p=document.createElement("tr");p.className="ui-tabela__virtual-spacer",p.setAttribute("aria-hidden","true"),p.style.height=`${(r-a)*e}px`;const h=document.createElement("td");h.colSpan=t.colunas.length||1,p.appendChild(h),u.appendChild(p)}if(t.tbodyElement.appendChild(u),d!==null){const p=t.tbodyElement.querySelector(`tr[data-index="${d}"]`);p==null||p.focus({preventScroll:!0})}}function ce(t){if(t===void 0)return null;const r=typeof t=="number"?t:parseInt(t,10);return isNaN(r)?null:r}function j(t,r){const e=ce(t.larguraMinima);let o=Math.max(e??60,r);const i=ce(t.larguraMaxima);return i!==null&&(o=Math.min(i,o)),o}function we(t,r,e,o){const i=j(t,r.offsetWidth+o);return t.largura=`${i}px`,r.style.width=`${i}px`,e&&(e.style.width=`${i}px`),`${i}px`}function Ce(t){const{evento:r,coluna:e,colIndex:o,thElement:i,resizer:a,colgroupElement:n,onResizeStart:l,onResizeEnd:d,onResizeCancel:c}=t;r.stopPropagation(),r.preventDefault(),l(),a.classList.add("ui-tabela__resizer--ativo");const s=r.pageX,u=i.offsetWidth,p=n==null?void 0:n.children[o],h=r.type==="pointerdown",m=h?r.pointerId:null,x=h?"pointermove":"mousemove",f=h?"pointerup":"mouseup";let g=!1;const v=w=>{const _=w;if(m!==null&&_.pointerId!==m)return;g=!0;const E=j(e,u+(_.pageX-s));e.largura=`${E}px`,i.style.width=`${E}px`,p&&(p.style.width=`${E}px`)},y=()=>{k(),g?d(String(e.largura)):c==null||c()},k=()=>{a.classList.remove("ui-tabela__resizer--ativo"),window.removeEventListener(x,v),window.removeEventListener(f,y),h&&window.removeEventListener("pointercancel",y)};return window.addEventListener(x,v),window.addEventListener(f,y),h&&window.addEventListener("pointercancel",y),k}const P=20;let wt=0;function Ae(t){var N;const{evento:r,coluna:e,colIndex:o,thElement:i,colgroupElement:a,shadow:n,onResizeEnd:l}=t,d=`ui-tabela-dlg-${++wt}`,c=document.createElement("dialog");c.className="ui-tabela__prompt-dialog",c.setAttribute("part","dialogo"),c.setAttribute("aria-labelledby",`${d}-titulo`);const s=document.createElement("label");s.className="ui-tabela__prompt-title",s.id=`${d}-titulo`,s.htmlFor=`${d}-campo`,s.textContent=`Largura de "${e.rotulo}" (px; vazio = automática)`;const u=document.createElement("input");u.id=`${d}-campo`,u.type="number",u.min=String(P),u.step="1",u.setAttribute("inputmode","numeric"),u.placeholder="auto";const p=e.largura?parseInt(String(e.largura),10):NaN;u.value=Number.isFinite(p)?String(p):"";const h=document.createElement("div");h.className="ui-tabela__prompt-erro",h.id=`${d}-erro`,h.setAttribute("role","alert");const m=document.createElement("div");m.className="ui-tabela__prompt-actions";const x=document.createElement("button");x.type="button",x.textContent="Aplicar";const f=document.createElement("button");f.type="button",f.textContent="Cancelar",m.appendChild(f),m.appendChild(x),c.appendChild(s),c.appendChild(u),c.appendChild(h),c.appendChild(m),n.appendChild(c),typeof c.showModal=="function"?c.showModal():c.setAttribute("open",""),c.style.position="fixed";const g=c.getBoundingClientRect(),v=g.width||240,y=g.height||140,k=Math.max(8,Math.min(r.clientX||0,window.innerWidth-v-8)),w=Math.max(8,Math.min(r.clientY||0,window.innerHeight-y-8));c.style.left=`${k}px`,c.style.top=`${w}px`;let _=!1;const E=()=>{var A;_||(_=!0,c.open&&typeof c.close=="function"&&c.close(),c.remove(),(A=i.querySelector(".ui-tabela__ordenar, .ui-tabela__resizer"))==null||A.focus())},I=A=>{h.textContent=A,u.setAttribute("aria-invalid","true"),u.setAttribute("aria-describedby",h.id),u.focus()},R=()=>{const A=e.largura,le=u.value.trim();if(le==="")e.largura=void 0,i.style.width="",a!=null&&a.children[o]&&(a.children[o].style.width="");else{const X=Number(le);if(!Number.isFinite(X)||X<P){I(`Informe um valor de pelo menos ${P} px, ou deixe vazio para automática.`);return}const G=Math.round(j({...e,larguraMinima:e.larguraMinima??P},X));e.largura=`${G}px`,i.style.width=`${G}px`,a!=null&&a.children[o]&&(a.children[o].style.width=`${G}px`)}E(),e.largura!==A&&l(e.largura?String(e.largura):"auto")};x.addEventListener("click",A=>{A.stopPropagation(),R()}),f.addEventListener("click",A=>{A.stopPropagation(),E()}),c.addEventListener("close",E),u.addEventListener("input",()=>{h.textContent="",u.removeAttribute("aria-invalid"),u.removeAttribute("aria-describedby")}),u.addEventListener("keydown",A=>{A.key==="Enter"?(A.preventDefault(),R()):A.key==="Escape"&&(A.preventDefault(),E())}),u.focus(),(N=u.select)==null||N.call(u)}function ke(t,r,e,o,i,a){return Ce({evento:t,coluna:r,colIndex:e,thElement:o,resizer:i,colgroupElement:a.colgroupElement,onResizeStart:()=>a.onSetIsResizing(!0),onResizeCancel:()=>{setTimeout(()=>a.onSetIsResizing(!1),50)},onResizeEnd:n=>{setTimeout(()=>a.onSetIsResizing(!1),50),a.host.dispatchEvent(new CustomEvent("ui-column-resize",{detail:{idColuna:r.id,largura:n},bubbles:!0,composed:!0}))}})}function ze(t,r,e,o,i){t.preventDefault(),t.stopPropagation(),Ae({evento:t,coluna:r,colIndex:e,thElement:o,colgroupElement:i.colgroupElement,shadow:i.shadow,onResizeEnd:a=>{i.host.dispatchEvent(new CustomEvent("ui-column-resize",{detail:{idColuna:r.id,largura:a},bubbles:!0,composed:!0}))}})}function Se(t,r,e,o,i){const a=we(r,e,o,t);i.host.dispatchEvent(new CustomEvent("ui-column-resize",{detail:{idColuna:r.id,largura:a},bubbles:!0,composed:!0}))}function Le(t){Ee({theadElement:t.theadElement,colgroupElement:t.colgroupElement,colunas:t.colunas,colunaOrdenada:t.dadosController.getColunaOrdenada(),direcaoOrdenacao:t.dadosController.getDirecaoOrdenacao(),headerListeners:t.headerListeners,formatWidth:ee,getAlignmentClass:te,getTextAlign:re,onHeaderClick:r=>t.onHeaderClick(r),onHeaderContextMenu:(r,e,o,i)=>{ze(r,e,o,i,{host:t.host,colgroupElement:t.colgroupElement,shadow:t.shadow,onSetIsResizing:t.onSetIsResizing})},onInitColumnResize:(r,e,o,i,a)=>{const n=ke(r,e,o,i,a,{host:t.host,colgroupElement:t.colgroupElement,shadow:t.shadow,onSetIsResizing:t.onSetIsResizing});t.onActiveResizeCleanup(n)},onResizeTeclado:(r,e,o,i,a)=>{Se(r,e,i,a,{host:t.host,colgroupElement:t.colgroupElement,shadow:t.shadow,onSetIsResizing:t.onSetIsResizing})},onColumnAutoFit:(r,e,o)=>{r.largura=void 0,e.style.width="",o.style.width="",t.host.dispatchEvent(new CustomEvent("ui-column-resize",{bubbles:!0,composed:!0,detail:{idColuna:r.id,largura:"auto"}}))}})}function Me(t){ye({tbodyElement:t.tbodyElement,tableElement:t.tableElement,emptyElement:t.emptyElement,containerElement:t.containerElement,dadosExibicao:t.dadosController.getDadosExibicao(),colunas:t.colunas,chaveId:t.chaveId,virtualizar:t.virtualizar,rowHeight:t.rowHeight,indiceAtivo:t.indiceAtivo,filtroAtivo:t.dadosController.temFiltro(),textoVazio:t.textoVazio,textoSemResultados:t.textoSemResultados,isItemSelecionado:(r,e)=>t.selecaoController.isItemSelecionado(r,e),onLinhaClique:(r,e)=>{t.selecaoController.setItemSelecionado(r),t.host.dispatchEvent(new CustomEvent("ui-linha-clique",{bubbles:!0,composed:!0,detail:{item:r,indice:e}}))},formatWidth:ee,getAlignmentClass:te,getTextAlign:re})}function Te(t,r){let e=!1;const o=()=>{e||(window.requestAnimationFrame(()=>{try{r()}finally{e=!1}}),e=!0)};return t.addEventListener("scroll",o),o}function De(t,r,e,o){return ve(t,r,e,o)}function oe(t){const r=t.host.getAttribute("texto-vazio")||t.host.getAttribute("empty-text");r&&t.onTextoVazioAlterado(r);const e=t.host.getAttribute("virtualizar")||t.host.getAttribute("virtualize");e!==null&&t.onVirtualizarAlterado(e!=="false"),t.onSrcLido(t.host.getAttribute("src"));const o=t.host.hasAttribute("carregando")||t.host.hasAttribute("loading");t.onCarregandoAlterado(o),t.loadingElement&&(t.loadingElement.style.display=o?"flex":"none")}function Re(t,r,e){if(oe(e),t==="src"){r&&e.host.isConnected&&e.onCarregarSrc(r);return}if(t==="max-height"&&e.containerElement){e.containerElement.style.maxHeight=r||"";return}if((t==="texto-vazio"||t==="empty-text")&&e.emptyElement){const o=e.emptyElement.querySelector(".ui-tabela__empty-text");o&&r&&(o.textContent=r),e.onRenderBody();return}if(t==="carregando"||t==="loading"){e.loadingElement&&(e.loadingElement.style.display=r!==null?"flex":"none");return}if(t==="densidade"||t==="density"){e.onRenderBody();return}e.onRenderTotal()}function Ct(t,r,e,o){if(t==="Enter"||t===" ")return{tipo:"ativar"};if(!Number.isInteger(r)||!Number.isInteger(e)||e<0)return null;const i=Math.max(1,Math.floor(Number.isFinite(o)?o:1)),a=n=>Math.min(e,Math.max(0,n));switch(t){case"ArrowDown":return{tipo:"mover",indice:a(r+1)};case"ArrowUp":return{tipo:"mover",indice:a(r-1)};case"Home":return{tipo:"mover",indice:0};case"End":return{tipo:"mover",indice:e};case"PageDown":return{tipo:"mover",indice:a(r+i)};case"PageUp":return{tipo:"mover",indice:a(r-i)};default:return null}}const At="Não foi possível carregar os dados.",kt="Nenhum resultado para o filtro";function zt(t,r,e,o){if(!t)return;if(!r){t.style.display="none";return}const i=t.querySelector(".ui-tabela__erro-mensagem"),a=t.querySelector(".ui-tabela__erro-detalhe");i&&(i.textContent=e||At),a&&(a.textContent=r.erro||"");const n=t.querySelector(".ui-tabela__erro-acao");n&&(n.style.display=o?"":"none"),t.style.display="flex"}function St(t,r,e,o){t&&(t.textContent=e?r===0?o:`${r} ${r===1?"registro encontrado":"registros encontrados"}`:"")}function Lt({tabela:t,container:r},e,o){t&&(e?t.setAttribute("aria-label",e):t.removeAttribute("aria-label"),t.setAttribute("aria-busy",String(o)),r&&(e?(r.setAttribute("role","region"),r.setAttribute("aria-label",e)):(r.removeAttribute("role"),r.removeAttribute("aria-label"))))}const Mt=800;function ue(t,r,e){const o=t.getBoundingClientRect(),i=r.getBoundingClientRect(),a=o.top+t.clientTop+e,n=o.top+t.clientTop+t.clientHeight;return i.top<a?i.top-a:i.bottom>n?Math.min(i.bottom-n,i.top-a):0}function pe(t,r,e){e==="smooth"&&typeof t.scrollTo=="function"?t.scrollTo({top:r,behavior:"smooth"}):t.scrollTop=r}class Tt{constructor(r){b(this,"cancelarCorrecao",null);this.p=r}alturaCabecalho(){var r;return((r=this.p.cabecalho())==null?void 0:r.offsetHeight)??0}linhasPorPagina(){var e;const r=(((e=this.p.container())==null?void 0:e.clientHeight)??0)-this.alturaCabecalho();return Math.max(1,Math.floor(r/this.p.alturaLinha()))}focar(r){const e=this.p.container(),o=this.p.tbody();if(!e||!o)return;this.p.aoLinhaAtiva(r);const i=`tr[data-index="${r}"]`;let a=o.querySelector(i);if(a||(e.scrollTop=Math.max(0,r*this.p.alturaLinha()-e.clientHeight/2),this.p.renderizarCorpo(),a=o.querySelector(i)),!a)return;a.focus({preventScroll:!0});const n=ue(e,a,this.alturaCabecalho());n&&(e.scrollTop+=n)}posicionar(r,e){const o=this.p.container(),i=this.p.tbody();if(!o||!i)return!1;this.cancelar();const a=()=>i.querySelector(`tr[data-index="${r}"]`),n=u=>{const p=a();if(!p)return;const h=ue(o,p,this.alturaCabecalho());h&&pe(o,o.scrollTop+h,u)};if(a())return n(e),!0;const l=()=>{o.scrollTop=Math.max(0,r*this.p.alturaLinha()),this.p.renderizarCorpo(),n("auto"),this.p.renderizarCorpo()};if(e==="auto")return l(),!0;pe(o,Math.max(0,r*this.p.alturaLinha()),"smooth");let d=!0;const c=()=>{d&&(this.cancelar(),this.p.renderizarCorpo(),a()?n("smooth"):l())},s=window.setTimeout(c,Mt);return o.addEventListener("scrollend",c,{once:!0}),this.cancelarCorrecao=()=>{d=!1,window.clearTimeout(s),o.removeEventListener("scrollend",c),this.cancelarCorrecao=null},!0}cancelar(){var r;(r=this.cancelarCorrecao)==null||r.call(this)}}class Ne extends $.SafeHTMLElement{constructor(){super();b(this,"shadow");b(this,"_colunas",[]);b(this,"_textoVazio","Nenhum registro encontrado");b(this,"_virtualizar",!0);b(this,"_isResizing",!1);b(this,"_carregando",!1);b(this,"_src",null);b(this,"_fetchOpcoes",null);b(this,"_fetcher",null);b(this,"_containerElement",null);b(this,"_tableElement",null);b(this,"_theadElement",null);b(this,"_tbodyElement",null);b(this,"_colgroupElement",null);b(this,"_emptyElement",null);b(this,"_loadingElement",null);b(this,"_erroElement",null);b(this,"_anuncioElement",null);b(this,"_erro",null);b(this,"_scrollHandler",null);b(this,"_activeResizeCleanup",null);b(this,"_headerListeners",new H.ListenerBag);b(this,"_corpoListeners",new H.ListenerBag);b(this,"_indiceAtivo",null);b(this,"_alturaLinhaMedida",null);b(this,"rolagem",new Tt({container:()=>this._containerElement,tbody:()=>this._tbodyElement,cabecalho:()=>this._theadElement,alturaLinha:()=>this.getRowHeight(),renderizarCorpo:()=>this.renderBody(),aoLinhaAtiva:e=>{this._indiceAtivo=e}}));b(this,"remotaController");b(this,"selecaoController");b(this,"dadosController",new _e);b(this,"handleFocoLinha",e=>{const o=e.target;o.parentElement!==this._tbodyElement||!o.hasAttribute("data-index")||this.definirLinhaAtiva(Number(o.getAttribute("data-index")))});b(this,"handleTecladoCorpo",e=>{const o=e.target;if(o.parentElement!==this._tbodyElement||!o.hasAttribute("data-index"))return;const i=this.dadosController.getDadosExibicao().length-1,a=Ct(e.key,Number(o.getAttribute("data-index")),i,this.rolagem.linhasPorPagina());a&&(e.preventDefault(),a.tipo==="ativar"?o.click():this.rolagem.focar(a.indice))});this.shadow=this.attachShadow({mode:"open"}),this.remotaController=new me({host:this,onCarregandoAlterado:e=>{this.carregando=e},onDadosRecebidos:e=>{this.dados=e},getOpcoes:()=>this._fetchOpcoes,getFetcher:()=>this._fetcher}),this.selecaoController=new fe({host:this,getTbody:()=>this._tbodyElement,getDadosExibicao:()=>this.dadosController.getDadosExibicao(),getDadosOriginais:()=>this.dadosController.getDadosOriginais(),getChaveId:()=>this.chaveId,onRolarParaIndice:(e,o)=>this.rolagem.posicionar(e,o),onLinhaAtiva:e=>this.definirLinhaAtiva(e)}),this.addEventListener("ui-fetch-erro",e=>this.mostrarErro(e.detail)),this.addEventListener("ui-fetch-start",()=>this.mostrarErro(null)),this.addEventListener("ui-fetch-sucesso",()=>this.mostrarErro(null))}static get observedAttributes(){return["texto-vazio","empty-text","max-height","densidade","density","altura-linha","row-height","virtualizar","virtualize","src","carregando","loading","chave-id","id-key","aria-label","ordenacao-remota","texto-erro","texto-sem-resultados","texto-carregando"]}connectedCallback(){this.syncAttributes(),this.alturaLinha&&this.style.setProperty("--ui-tabela-altura-linha",`${this.alturaLinha}px`),!this.hasAttribute("densidade")&&!this.hasAttribute("density")&&this.setAttribute("densidade","normal"),this.renderTotal(),this._src&&this.remotaController.carregar(this._src)}disconnectedCallback(){this.cleanupEventListeners()}attributeChangedCallback(e,o,i){e==="ordenacao-remota"&&(this.dadosController.setOrdenacaoRemota(i!==null),this.atualizarContextoSelecao()),(e==="densidade"||e==="density"||e==="altura-linha"||e==="row-height")&&(this._alturaLinhaMedida=null),(e==="altura-linha"||e==="row-height")&&this.aplicarAlturaLinha(),(e==="chave-id"||e==="id-key")&&this.atualizarContextoSelecao(),Re(e,i,this.obterContextoAtributos()),this.sincronizarAria()}sincronizarAria(){this._tableElement&&(Lt({tabela:this._tableElement,container:this._containerElement},this.getAttribute("aria-label"),this._carregando),this.atualizarTextosEstado())}atualizarTextosEstado(){var o;const e=(o=this._loadingElement)==null?void 0:o.querySelector(".ui-tabela__loading-texto");e&&(e.textContent=this.getAttribute("texto-carregando")||"Carregando dados..."),this.renderizarErro()}mostrarErro(e){this._erro=e,this.renderizarErro()}renderizarErro(){zt(this._erroElement,this._erro,this.getAttribute("texto-erro"),!!this._src)}anunciarResultado(){St(this._anuncioElement,this.dadosController.getDadosExibicao().length,this.dadosController.temFiltro(),this._textoSemResultados())}_textoSemResultados(){return this.getAttribute("texto-sem-resultados")||kt}syncAttributes(){oe(this.obterContextoAtributos())}obterContextoAtributos(){return{host:this,containerElement:this._containerElement,emptyElement:this._emptyElement,loadingElement:this._loadingElement,onTextoVazioAlterado:e=>{this._textoVazio=e},onVirtualizarAlterado:e=>{this._virtualizar=e},onSrcLido:e=>{this._src=e},onCarregarSrc:e=>{this.remotaController.carregar(e)},onCarregandoAlterado:e=>{this._carregando=e},onRenderBody:()=>this.renderBody(),onRenderTotal:()=>this.renderTotal()}}get src(){return this._src}set src(e){this._src=e,e?this.setAttribute("src",e):this.removeAttribute("src")}get carregando(){return this._carregando}set carregando(e){this._carregando=!!e,this._carregando?this.setAttribute("carregando",""):(this.removeAttribute("carregando"),this.removeAttribute("loading")),this._loadingElement&&(this._loadingElement.style.display=this._carregando?"flex":"none"),this.sincronizarAria()}get fetchOpcoes(){return this._fetchOpcoes}set fetchOpcoes(e){this._fetchOpcoes=e??null}get fetcher(){return this._fetcher}set fetcher(e){this._fetcher=typeof e=="function"?e:null}get ordenacaoRemota(){return this.hasAttribute("ordenacao-remota")}set ordenacaoRemota(e){this.toggleAttribute("ordenacao-remota",!!e)}async carregarDoEndpoint(e){return e&&e!==this._src&&(this.src=e),this.remotaController.carregar(e||this._src||"")}async recarregar(){return this._src?this.remotaController.carregar(this._src):(this.dadosController.aplicarOrdenacao(),this.atualizarContextoSelecao(),this.renderBody(),!0)}filtrar(e){this.dadosController.filtrar(e),this.atualizarContextoSelecao(),this.renderBody()}cleanupEventListeners(){this._containerElement&&this._scrollHandler&&(this._containerElement.removeEventListener("scroll",this._scrollHandler),this._scrollHandler=null),this._activeResizeCleanup&&(this._activeResizeCleanup(),this._activeResizeCleanup=null,this._isResizing=!1),this.rolagem.cancelar(),this.remotaController.abortar(),this._headerListeners.cleanup(),this._corpoListeners.cleanup()}get colunas(){return this._colunas}set colunas(e){this._colunas=Array.isArray(e)?e.filter(o=>o!=null).map(o=>({...o})):[],this.dadosController.setColunas(this._colunas),this.dadosController.setColunasFiltro(this._colunas.map(o=>o.id)),this._alturaLinhaMedida=null,this.renderTotal()}get dados(){return this.dadosController.getDadosOriginais()}set dados(e){this.dadosController.setDadosOriginais(e),this.atualizarContextoSelecao(),this.renderBody()}get itens(){return this.dados}set itens(e){this.dados=e}get chaveId(){return this.getAttribute("chave-id")||this.getAttribute("id-key")||"id"}set chaveId(e){e?this.setAttribute("chave-id",e):(this.removeAttribute("chave-id"),this.removeAttribute("id-key")),this.atualizarContextoSelecao()}get itemSelecionado(){return this.selecaoController.getItemSelecionado()}set itemSelecionado(e){this.selecaoController.setItemSelecionado(e)}get indiceSelecionado(){return this.selecaoController.getIndiceSelecionado()}set indiceSelecionado(e){this.selecaoController.setIndiceSelecionado(e)}limparSelecao(){this.selecaoController.limparSelecao()}get densidade(){const e=this.getAttribute("densidade")||this.getAttribute("density");return e==="compacta"||e==="compact"?"compacta":e==="relaxada"||e==="relaxed"?"relaxada":"normal"}set densidade(e){e?this.setAttribute("densidade",e):(this.removeAttribute("densidade"),this.removeAttribute("density")),this.renderBody()}get virtualizar(){return this._virtualizar}set virtualizar(e){this._virtualizar=!!e,e?this.setAttribute("virtualizar","true"):this.removeAttribute("virtualizar"),this.renderTotal()}get colunaOrdenada(){return this.dadosController.getColunaOrdenada()}set colunaOrdenada(e){this.dadosController.setColunaOrdenada(e),this.atualizarContextoSelecao(),this.renderHeader(),this.renderBody()}get direcaoOrdenacao(){return this.dadosController.getDirecaoOrdenacao()}set direcaoOrdenacao(e){this.dadosController.setDirecaoOrdenacao(e),this.atualizarContextoSelecao(),this.renderHeader(),this.renderBody()}get textoVazio(){return this._textoVazio}set textoVazio(e){this._textoVazio=e||"Nenhum registro encontrado",this.renderTotal()}handleHeaderClick(e){if(!e.ordenavel||this._isResizing)return;const o=this.dadosController.getColunaOrdenada(),i=this.dadosController.getDirecaoOrdenacao(),a=this.dadosController.alternarOrdenacaoColuna(e);if(!a)return;this.atualizarContextoSelecao(),this.renderHeader(),this.renderBody();const n=new CustomEvent("ui-sort",{detail:a,bubbles:!0,composed:!0,cancelable:!0});this.dispatchEvent(n),n.defaultPrevented&&(this.dadosController.restaurarOrdenacao(o,i),this.atualizarContextoSelecao(),this.renderHeader(),this.renderBody())}get alturaLinha(){const e=this.getAttribute("altura-linha")??this.getAttribute("row-height"),o=e===null?NaN:parseFloat(e);return Number.isFinite(o)&&o>0?o:null}set alturaLinha(e){e&&e>0?this.setAttribute("altura-linha",String(e)):(this.removeAttribute("altura-linha"),this.removeAttribute("row-height"))}aplicarAlturaLinha(){const e=this.alturaLinha;e?this.style.setProperty("--ui-tabela-altura-linha",`${e}px`):this.style.removeProperty("--ui-tabela-altura-linha"),this.renderBody()}getRowHeight(){return this.alturaLinha??this._alturaLinhaMedida??K(this.densidade)}medirAlturaLinha(){if(this._alturaLinhaMedida!==null||!this._tbodyElement)return;const e=this._tbodyElement.querySelectorAll("tr[data-index]");if(e.length===0)return;let o=0;e.forEach(a=>{o+=a.getBoundingClientRect().height});const i=o/e.length;i<=0||(this._alturaLinhaMedida=i,Math.abs(i-K(this.densidade))>.5&&this.renderBody())}atualizarContextoSelecao(){this.selecaoController.reconciliar(),this._indiceAtivo=this.selecaoController.getIndiceSelecionado()}renderTotal(){var e;if(this.shadow){if(this._containerElement){if(this._containerElement.style.maxHeight=this.getAttribute("max-height")||"",this._emptyElement){const o=this._emptyElement.querySelector(".ui-tabela__empty-text");o&&(o.textContent=this._textoVazio)}}else{this.cleanupEventListeners();const o=De(this.shadow,this._textoVazio,this.getAttribute("max-height"),this._carregando);this._containerElement=o.containerElement,this._tableElement=o.tableElement,this._colgroupElement=o.colgroupElement,this._theadElement=o.theadElement,this._tbodyElement=o.tbodyElement,this._emptyElement=o.emptyElement,this._loadingElement=o.loadingElement,this._erroElement=o.erroElement,this._anuncioElement=o.anuncioElement,(e=o.erroElement.querySelector(".ui-tabela__erro-acao"))==null||e.addEventListener("click",()=>{this.recarregar()})}this.renderHeader(),this.renderBody(),this._virtualizar&&this._containerElement&&!this._scrollHandler&&(this._scrollHandler=Te(this._containerElement,()=>this.renderBody())),this._tbodyElement&&this._corpoListeners.size===0&&(this._corpoListeners.add(this._tbodyElement,"keydown",this.handleTecladoCorpo),this._corpoListeners.add(this._tbodyElement,"focusin",this.handleFocoLinha)),this.sincronizarAria()}}definirLinhaAtiva(e){this._indiceAtivo=e;const o=this._tbodyElement,i=o==null?void 0:o.querySelector(`tr[data-index="${e}"]`);!o||!i||(o.querySelectorAll('tr[tabindex="0"]').forEach(a=>{a!==i&&(a.tabIndex=-1)}),i.tabIndex=0)}obterContextoRenderizador(){return{host:this,shadow:this.shadow,theadElement:this._theadElement,colgroupElement:this._colgroupElement,tbodyElement:this._tbodyElement,tableElement:this._tableElement,emptyElement:this._emptyElement,containerElement:this._containerElement,colunas:this._colunas,dadosController:this.dadosController,selecaoController:this.selecaoController,chaveId:this.chaveId,virtualizar:this._virtualizar,rowHeight:this.getRowHeight(),indiceAtivo:this._indiceAtivo,textoVazio:this._textoVazio,textoSemResultados:this._textoSemResultados(),headerListeners:this._headerListeners,onSetIsResizing:e=>{this._isResizing=e},onActiveResizeCleanup:e=>{this._activeResizeCleanup=e},onHeaderClick:e=>this.handleHeaderClick(e)}}renderHeader(){Le(this.obterContextoRenderizador())}renderBody(){Me(this.obterContextoRenderizador()),this.anunciarResultado(),this.medirAlturaLinha()}rolarPara(e,o){return this.selecaoController.rolarPara(e,o)}rolarParaIndice(e,o){return this.selecaoController.rolarPara(e,{...o,porIndice:!0})}}$.definirCustomElement("ui-tabela",Ne);const M=Math.PI/180;function T(t){return Math.abs(t)<1e-12?0:Number(t.toPrecision(15))}const Dt={sqrt:Math.sqrt,abs:Math.abs,round:Math.round,floor:Math.floor,ceil:Math.ceil,sin:t=>T(Math.sin(t*M)),cos:t=>T(Math.cos(t*M)),tan:t=>T(Math.tan(t*M)),asin:t=>T(Math.asin(t)/M),acos:t=>T(Math.acos(t)/M),atan:t=>T(Math.atan(t)/M)};function Q(t){if(!t||typeof t!="string")return null;let r=t.trim();if(!r)return null;r=r.replace(/(\d),(\d)/g,"$1.$2").replace(/,/g,"."),r=r.replace(/\bpi\b/gi,String(Math.PI)),r=r.replace(/\be\b/gi,String(Math.E));let e=0;function o(){return r[e]||""}function i(){return r[e++]||""}function a(){for(;e<r.length&&/\s/.test(r[e]);)e++}function n(){a();let s=l();for(a();e<r.length;){const u=o();if(u==="+"||u==="-"){i(),a();const p=e,h=l();a(),r.slice(p,e).includes("%")?s=u==="+"?s+s*h:s-s*h:s=u==="+"?s+h:s-h}else break}return s}function l(){a();let s=d();for(a();e<r.length;){const u=o();if(u==="*"||u==="/"||u==="x"||u==="X"){i(),a();const p=d();if(u==="/"&&p===0)throw new Error("Divisão por zero");s=u==="/"?s/p:s*p,a()}else break}return s}function d(){a();const s=o();if(s==="+"||s==="-"){i();const p=d();return s==="-"?-p:p}let u=c();if(a(),o()==="^"){i();const p=d();u=Math.pow(u,p)}else if(r.slice(e,e+2)==="**"){e+=2;const p=d();u=Math.pow(u,p)}return u}function c(){a();const s=o();if(s==="+"||s==="-"){i();const h=c();return s==="-"?-h:h}if(s==="("){i();const h=n();if(a(),i()!==")")throw new Error("Parêntese sem fechamento");return a(),o()==="%"?(i(),h/100):h}const u=r.slice(e).match(/^([a-zA-Z_]\w*)\s*\(/);if(u){const h=Dt[u[1].toLowerCase()];if(!h)throw new Error("Função desconhecida: "+u[1]);e+=u[0].length;const m=n();if(a(),i()!==")")throw new Error("Parêntese sem fechamento");const x=h(m);return a(),o()==="%"?(i(),x/100):x}const p=r.slice(e).match(/^([0-9]+(?:\.[0-9]+)?|\.[0-9]+)/);if(p){e+=p[0].length;let h=parseFloat(p[0]);return a(),o()==="%"&&(i(),h=h/100),h}throw new Error("Caractere inválido: "+s)}try{const s=n();return a(),e<r.length?null:isFinite(s)?s:null}catch{return null}}const Rt='.ui-prop__linha input:not([disabled]):not([type="color"]):not(.ui-prop__cor-picker-oculto), .ui-prop__linha select:not([disabled]), .ui-prop__linha .ui-prop__btn-acao-inline:not([disabled]), .ui-prop__linha .ui-prop__editor-booleano, .ui-prop__linha .ui-prop__editor-cor-container';function ie(t,r){if(!t)return null;const e=String(r);return Array.from(t.querySelectorAll("[data-prop-id]")).find(o=>o.getAttribute("data-prop-id")===e)??null}const Oe=new WeakMap;function z(t,r){Oe.set(t,r)}function Z(t,r,e){var a,n;const o=ie(t,r),i=(a=o==null?void 0:o.querySelector(".ui-prop__col-valor"))==null?void 0:a.firstElementChild;i&&((n=Oe.get(i))==null||n(e))}function O(t,r,e=(i,a)=>i===String(a),o=i=>i==null||i===""?"—":String(i)){var n;(n=t.querySelector("option[data-externa]"))==null||n.remove();const i=Array.from(t.options).find(l=>!l.hasAttribute("data-acao")&&e(l.value,r));if(i){i.selected=!0;return}const a=document.createElement("option");a.value=r==null?"":String(r),a.textContent=o(r),a.setAttribute("data-externa",""),a.hidden=!0,t.insertBefore(a,t.firstChild),a.selected=!0}function B(t,r){var o;(o=t.querySelector("option[data-externa]"))==null||o.remove();const e=document.createElement("option");e.value="",e.textContent=r,e.setAttribute("data-externa",""),e.setAttribute("data-misto",""),e.hidden=!0,e.disabled=!0,t.insertBefore(e,t.firstChild),e.selected=!0}function Be(t,r){const e=Array.from(t.querySelectorAll(Rt)),o=e.indexOf(r);if(o!==-1&&o+1<e.length){const i=e[o+1];i.focus(),i instanceof HTMLInputElement&&i.select()}}function ae(t,r){var e;t.classList.toggle("ui-prop__categoria--aberta",r),(e=t.querySelector(".ui-prop__categoria-header"))==null||e.setAttribute("aria-expanded",String(r))}function Ie(t,r){r.forEach(e=>e.aberto=!0),t.querySelectorAll(".ui-prop__categoria").forEach(e=>ae(e,!0))}function Pe(t,r){r.forEach(e=>e.aberto=!1),t.querySelectorAll(".ui-prop__categoria").forEach(e=>ae(e,!1))}function Fe(t,r,e,o){const i=e.find(a=>a.id===o);if(i){i.aberto=i.aberto===!1;const a=Array.from(t.querySelectorAll("[data-cat-id]")).find(n=>n.getAttribute("data-cat-id")===o);a&&ae(a,!!i.aberto),r.dispatchEvent(new CustomEvent("ui-categoria-toggle",{bubbles:!0,composed:!0,detail:{id:o,aberto:i.aberto}}))}}const U=Symbol.for("ui-tabela-propriedades:misto"),W="Varia";function C(t){return t===U}function S(t){var e;let r;try{r=(e=t.obterTextoMisto)==null?void 0:e.call(t)}catch{}return typeof r=="string"&&r.trim()?r:W}function D(t,r){return t==null&&r==null?!0:Object.is(t,r)}function q(t){return t.misto?U:t.valor}function Ve(t){if(!Array.isArray(t)||t.length===0)return;const r=t[0];for(let e=1;e<t.length;e++)if(!D(r,t[e]))return U;return r}function Nt(t){if(!Array.isArray(t))return{};const r=t.filter(i=>i!==null&&typeof i=="object"&&!Array.isArray(i)),e=new Set;r.forEach(i=>Object.keys(i).forEach(a=>e.add(a)));const o={};return e.forEach(i=>{o[i]=Ve(r.map(a=>i in a?a[i]:void 0))}),o}function He(t,r,e,o){t.classList.toggle("ui-prop__editor--misto",e),e?t.placeholder=o:r.placeholder?t.placeholder=r.placeholder:t.removeAttribute("placeholder")}function qe(t,r){const e=document.createElement("span"),o=i=>{if(C(i)){e.className="ui-prop__valor-readonly ui-prop__editor--misto",e.textContent=r?S({obterTextoMisto:r}):W;return}const a=typeof i=="number"||typeof i=="string"&&/^-?\d+(\.\d+)?$/.test(i.trim());e.className=`ui-prop__valor-readonly ${a?"ui-prop__valor-readonly--numero":""}`.trim(),e.textContent=i!=null?String(i):"—"};return o(t),z(e,o),e}function $e(t,r,e,o){const i=document.createElement("label");i.className="ui-prop__editor-booleano",i.setAttribute("role","checkbox"),i.tabIndex=0,i.setAttribute("aria-label",r.rotulo);const a=document.createElement("div");a.className="ui-prop__checkbox-custom";const n=document.createElement("span");n.className="ui-prop__booleano-rotulo";const l=c=>{const s=C(c),u=!s&&!!c;i.classList.toggle("ui-prop__editor--misto",s),a.classList.toggle("ui-prop__checkbox-custom--marcado",u),a.classList.toggle("ui-prop__checkbox-custom--misto",s),a.textContent=s?"–":u?"✓":"",n.textContent=s?S(o):u?"Sim":"Não",i.setAttribute("aria-checked",s?"mixed":String(u))};l(e),z(i,l),i.appendChild(a),i.appendChild(n);const d=()=>{const c=o.obterValorAtual(r.id),s=C(c)?!0:!c;o.registrarAlteracao(t,r.id,s),l(s)};return i.addEventListener("click",c=>{c.preventDefault(),d()}),i.addEventListener("keydown",c=>{c.key===" "?(c.preventDefault(),d()):c.key==="Enter"&&(c.preventDefault(),o.focarProximoEditor(i))}),i}function je(t,r,e,o){const i=document.createElement("select");i.className="ui-prop__editor-select",i.setAttribute("aria-label",r.rotulo),(r.opcoes||[]).forEach(n=>{const l=document.createElement("option");l.value=String(n.id),l.textContent=n.rotulo,i.appendChild(l)});const a=n=>{i.classList.toggle("ui-prop__editor--misto",C(n)),C(n)?B(i,S(o)):O(i,n)};return a(e),z(i,a),i.addEventListener("change",()=>{const n=(r.opcoes||[]).find(l=>String(l.id)===i.value);o.registrarAlteracao(t,r.id,n?n.id:i.value),a(o.obterValorAtual(r.id))}),i.addEventListener("keydown",n=>{n.key==="Enter"&&o.focarProximoEditor(i)}),i}function Ue(t,r,e){const o=document.createElement("button");return o.type="button",o.className="ui-prop__btn-acao-inline",o.textContent=r.rotuloAcao||"Editar...",o.addEventListener("click",()=>{typeof r.onClickAcao=="function"&&r.onClickAcao(r),e.despacharEventoAcao(r,t)}),o}function We(t,r,e,o){const i=document.createElement("input");i.type="text",i.inputMode="decimal",i.autocomplete="off",i.spellcheck=!1,i.className="ui-prop__editor-input ui-prop__editor-input--numero",i.setAttribute("aria-label",r.rotulo),r.placeholder&&(i.placeholder=r.placeholder);const a=d=>{if(d==null||d===""||C(d))return"";const c=Number(d);return isNaN(c)?String(d):r.casasDecimais!==void 0?c.toFixed(r.casasDecimais):String(c)},n=d=>{i.value=a(d),He(i,r,C(d),S(o))};n(e),z(i,n),i.addEventListener("focus",()=>{i.select()}),i.addEventListener("input",()=>{const d=i.value,c=/[\+\-\*\/\^\%\(\)]/.test(d)&&!/^[+-]?[0-9]*\.?[0-9]*$/.test(d.trim());i.classList.toggle("ui-prop__editor-input--calculando",c)});const l=()=>{i.classList.remove("ui-prop__editor-input--calculando");const d=i.value.trim();if(d===""){if(C(o.obterValorAtual(r.id)))return;o.registrarAlteracao(t,r.id,null);return}const c=Q(d);if(c!==null&&!isNaN(c)){let s=c;r.casasDecimais!==void 0&&(s=Number(c.toFixed(r.casasDecimais))),o.registrarAlteracao(t,r.id,s),n(s)}else n(o.obterValorAtual(r.id))};return i.addEventListener("change",l),i.addEventListener("blur",l),i.addEventListener("keydown",d=>{if(d.key==="Enter")l(),o.focarProximoEditor(i);else if(d.key==="Escape")i.classList.remove("ui-prop__editor-input--calculando"),n(o.obterValorAtual(r.id)),i.blur();else if(d.key==="ArrowUp"||d.key==="ArrowDown"){d.preventDefault();const c=Q(i.value),s=o.obterValorAtual(r.id);if(c===null&&C(s))return;const u=c??(Number(s)||0);let p=r.casasDecimais!==void 0?Math.pow(10,-r.casasDecimais):1;d.shiftKey?p*=10:d.altKey&&r.casasDecimais===void 0&&(p*=.1);let h=d.key==="ArrowUp"?u+p:u-p;r.casasDecimais!==void 0?h=Number(h.toFixed(r.casasDecimais)):h=Math.round(h*100)/100,o.registrarAlteracao(t,r.id,h),n(h)}}),i}function Xe(t,r,e,o){const i=document.createElement("input");i.type="text",i.className="ui-prop__editor-input",i.setAttribute("aria-label",r.rotulo),r.placeholder&&(i.placeholder=r.placeholder);const a=l=>{const d=C(l);i.value=d||l==null?"":String(l),He(i,r,d,S(o))};a(e),z(i,a),i.addEventListener("focus",()=>{i.select()});const n=()=>{i.value===""&&C(o.obterValorAtual(r.id))||(o.registrarAlteracao(t,r.id,i.value),a(o.obterValorAtual(r.id)))};return i.addEventListener("change",n),i.addEventListener("keydown",l=>{l.key==="Enter"?(n(),o.focarProximoEditor(i)):l.key==="Escape"&&(a(o.obterValorAtual(r.id)),i.blur())}),i}const Ge=(t,r)=>t.toLowerCase()===String(r??"").toLowerCase();function ne(t,r){r.forEach(e=>{const o=document.createElement("option");o.value=String(e.id),o.textContent=e.rotulo,t.appendChild(o)})}function Ye(t,r,e,o){const i=document.createElement("div");i.className="ui-prop__editor-linha-container";const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("class","ui-prop__linha-amostra-svg"),a.setAttribute("viewBox","0 0 44 12");const n=document.createElementNS("http://www.w3.org/2000/svg","line");n.setAttribute("x1","0"),n.setAttribute("y1","6"),n.setAttribute("x2","44"),n.setAttribute("y2","6");const l=s=>{const u=String(s||"").toLowerCase();u.includes("center")||u.includes("eixo")||u.includes("dashdot")||u.includes("traço-ponto")?n.setAttribute("stroke-dasharray","8,3,2,3"):u.includes("dash")||u.includes("tracej")||u.includes("hidden")?n.setAttribute("stroke-dasharray","6,3"):u.includes("dot")||u.includes("ponto")||u.includes("pontilh")?n.setAttribute("stroke-dasharray","2,3"):n.setAttribute("stroke-dasharray","none")};a.appendChild(n);const d=document.createElement("select");d.className="ui-prop__linha-select",d.setAttribute("aria-label",r.rotulo),ne(d,r.opcoes&&r.opcoes.length>0?r.opcoes:[{id:"ByLayer",rotulo:"ByLayer"},{id:"ByBlock",rotulo:"ByBlock"},{id:"Continuous",rotulo:"Continuous"},{id:"Dashed",rotulo:"Dashed"},{id:"Hidden",rotulo:"Hidden"},{id:"Center",rotulo:"Center"},{id:"Dotted",rotulo:"Dotted"}]);const c=s=>{const u=C(s);if(i.classList.toggle("ui-prop__editor--misto",u),u){l(""),B(d,S(o));return}l(s),O(d,s,Ge)};return c(e),z(i,c),d.addEventListener("change",()=>{o.registrarAlteracao(t,r.id,d.value),c(d.value)}),d.addEventListener("keydown",s=>{s.key==="Enter"&&o.focarProximoEditor(d)}),i.appendChild(a),i.appendChild(d),i}function Ke(t,r,e,o){const i=document.createElement("div");i.className="ui-prop__editor-espessura-container";const a=document.createElementNS("http://www.w3.org/2000/svg","svg");a.setAttribute("class","ui-prop__espessura-amostra-svg"),a.setAttribute("viewBox","0 0 38 12");const n=document.createElementNS("http://www.w3.org/2000/svg","line");n.setAttribute("x1","0"),n.setAttribute("y1","6"),n.setAttribute("x2","38"),n.setAttribute("y2","6");const l=s=>{const u=parseFloat(String(s).replace(/[^0-9.]/g,""));return isNaN(u)||u<=0?1.5:Math.min(8,Math.max(1,u*8))};a.appendChild(n);const d=document.createElement("select");d.className="ui-prop__espessura-select",d.setAttribute("aria-label",r.rotulo),ne(d,r.opcoes&&r.opcoes.length>0?r.opcoes:[{id:"ByLayer",rotulo:"ByLayer"},{id:"ByBlock",rotulo:"ByBlock"},{id:"0.00 mm",rotulo:"0.00 mm"},{id:"0.05 mm",rotulo:"0.05 mm"},{id:"0.09 mm",rotulo:"0.09 mm"},{id:"0.13 mm",rotulo:"0.13 mm"},{id:"0.15 mm",rotulo:"0.15 mm"},{id:"0.18 mm",rotulo:"0.18 mm"},{id:"0.20 mm",rotulo:"0.20 mm"},{id:"0.25 mm",rotulo:"0.25 mm"},{id:"0.30 mm",rotulo:"0.30 mm"},{id:"0.35 mm",rotulo:"0.35 mm"},{id:"0.40 mm",rotulo:"0.40 mm"},{id:"0.50 mm",rotulo:"0.50 mm"},{id:"0.60 mm",rotulo:"0.60 mm"},{id:"0.70 mm",rotulo:"0.70 mm"},{id:"1.00 mm",rotulo:"1.00 mm"},{id:"1.40 mm",rotulo:"1.40 mm"},{id:"2.00 mm",rotulo:"2.00 mm"}]);const c=s=>{const u=C(s);i.classList.toggle("ui-prop__editor--misto",u),n.setAttribute("stroke-width",String(l(u?"":s))),u?B(d,S(o)):O(d,s,Ge)};return c(e),z(i,c),d.addEventListener("change",()=>{o.registrarAlteracao(t,r.id,d.value),c(d.value)}),d.addEventListener("keydown",s=>{s.key==="Enter"&&o.focarProximoEditor(d)}),i.appendChild(a),i.appendChild(d),i}const se=[{nome:"Red",indice:1,hex:"#ff0000"},{nome:"Yellow",indice:2,hex:"#ffff00"},{nome:"Green",indice:3,hex:"#00ff00"},{nome:"Cyan",indice:4,hex:"#00ffff"},{nome:"Blue",indice:5,hex:"#0000ff"},{nome:"Magenta",indice:6,hex:"#ff00ff"},{nome:"White",indice:7,hex:"#ffffff"}],Qe=/^#([0-9a-f]{3}|[0-9a-f]{6})$/i;function J(t){const r=String(t??"").trim().toLowerCase(),e=se.find(o=>String(o.indice)===r||o.nome.toLowerCase()===r);return e?e.nome.toLowerCase():r}function Ot(t){const r=J(t),e=se.find(o=>o.nome.toLowerCase()===r);return e?e.hex:Qe.test(r)?r:"#ffffff"}function Ze(t){return t.length===4?"#"+t.slice(1).split("").map(r=>r+r).join(""):t}function Je(t,r,e,o){const i=document.createElement("div");i.className="ui-prop__editor-cor-cad-container";const a=document.createElement("div");a.className="ui-prop__cor-amostra";const n=document.createElement("select");n.className="ui-prop__cor-cad-select",n.setAttribute("aria-label",r.rotulo),ne(n,[{id:"ByLayer",rotulo:"ByLayer"},{id:"ByBlock",rotulo:"ByBlock"},...se.map(s=>({id:s.nome,rotulo:`${s.nome} (${s.indice})`}))]);const l=document.createElement("option");l.value="__escolher",l.textContent="Selecionar cor...",l.setAttribute("data-acao",""),n.appendChild(l);const d=document.createElement("input");d.type="color",d.className="ui-prop__cor-picker-oculto",d.tabIndex=-1;const c=s=>{const u=C(s);if(i.classList.toggle("ui-prop__editor--misto",u),a.classList.toggle("ui-prop__cor-amostra--misto",u),u){a.style.backgroundColor="",d.value="#ffffff",B(n,S(o));return}const p=Ot(s);a.style.backgroundColor=p,d.value=Ze(p),O(n,s,(h,m)=>J(h)===J(m),h=>h==null||h===""?"—":String(h))};return c(e),z(i,c),d.addEventListener("input",()=>{a.style.backgroundColor=d.value}),d.addEventListener("change",()=>{o.registrarAlteracao(t,r.id,d.value),c(o.obterValorAtual(r.id))}),n.addEventListener("change",()=>{if(n.value==="__escolher"){c(o.obterValorAtual(r.id)),d.click();return}o.registrarAlteracao(t,r.id,n.value),c(o.obterValorAtual(r.id))}),n.addEventListener("keydown",s=>{s.key==="Enter"&&o.focarProximoEditor(n)}),i.appendChild(a),i.appendChild(n),i.appendChild(d),i}function et(t,r,e,o){const i=document.createElement("div");i.className="ui-prop__editor-cor-container",i.setAttribute("role","button"),i.tabIndex=0;const a=document.createElement("div");a.className="ui-prop__cor-amostra";const n=document.createElement("span");n.className="ui-prop__cor-texto";const l=document.createElement("input");l.type="color",l.className="ui-prop__cor-picker-oculto",l.tabIndex=-1;const d=c=>{const s=C(c);if(i.classList.toggle("ui-prop__editor--misto",s),a.classList.toggle("ui-prop__cor-amostra--misto",s),s){const p=S(o);a.style.backgroundColor="",n.textContent=p,l.value="#ffffff",i.setAttribute("aria-label",`${r.rotulo}: ${p}`);return}const u=typeof c=="string"&&Qe.test(c)?Ze(c):null;a.style.backgroundColor=c||"#ffffff",n.textContent=r.textoAmostra||String(c||"ByLayer"),l.value=u??"#ffffff",i.setAttribute("aria-label",`${r.rotulo}: ${c||"ByLayer"}`)};return d(e),z(i,d),l.addEventListener("input",()=>{a.style.backgroundColor=l.value,n.textContent=r.textoAmostra||l.value}),l.addEventListener("change",()=>{o.registrarAlteracao(t,r.id,l.value),d(o.obterValorAtual(r.id))}),i.addEventListener("click",c=>{c.target!==l&&l.click()}),i.addEventListener("keydown",c=>{(c.key===" "||c.key==="Enter")&&(c.preventDefault(),l.click())}),i.appendChild(a),i.appendChild(n),i.appendChild(l),i}function tt(t,r,e,o){return r.somenteLeitura||r.tipo==="readonly"?qe(e,o.obterTextoMisto):r.tipo==="booleano"?$e(t,r,e,o):r.tipo==="linha"||r.tipo==="linetype"?Ye(t,r,e,o):r.tipo==="espessura"||r.tipo==="lineweight"?Ke(t,r,e,o):r.tipo==="cor-cad"?Je(t,r,e,o):r.tipo==="selecao"?je(t,r,e,o):r.tipo==="cor"?et(t,r,e,o):r.tipo==="acao"?Ue(t,r,o):r.tipo==="numero"?We(t,r,e,o):Xe(t,r,e,o)}function rt(t){if(!t.tipoContainerElement)return;if(!t.tipos||t.tipos.length===0){t.tipoContainerElement.style.display="none";return}t.tipoContainerElement.style.display="flex",t.tipoContainerElement.innerHTML="";const r=t.tipos.find(e=>String(e.id)===String(t.tipoSelecionadoId))||t.tipos[0];if(t.estiloVisual==="revit"){const e=document.createElement("div");e.className="ui-prop__tipo-revit-card";const o=document.createElement("div");o.className="ui-prop__tipo-miniatura";const i=r.iconeSvg?bt.higienizarSvg(r.iconeSvg):null;i?o.appendChild(i):o.innerHTML=`
8
- <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
9
- <rect x="3" y="3" width="18" height="18" rx="2"></rect>
10
- <path d="M3 9h18M9 21V9"></path>
11
- </svg>
12
- `;const a=document.createElement("div");a.className="ui-prop__tipo-info";const n=document.createElement("div");n.className="ui-prop__tipo-nome",n.textContent=r.rotulo;const l=document.createElement("div");l.className="ui-prop__tipo-subtexto",l.textContent=r.subtipo||"Tipo de Família",a.appendChild(n),a.appendChild(l),e.appendChild(o),e.appendChild(a);const d=document.createElement("div");d.className="ui-prop__tipo-revit-subbarra";const c=document.createElement("select");c.className="ui-prop__tipo-select",t.tipos.forEach(u=>{const p=document.createElement("option");p.value=u.id,p.textContent=`${u.rotulo}${u.subtipo?` : ${u.subtipo}`:""}`,String(u.id)===String(t.tipoSelecionadoId)&&(p.selected=!0),c.appendChild(p)}),c.addEventListener("change",()=>{t.onSelecionarTipo(c.value)});const s=document.createElement("button");s.type="button",s.className="ui-prop__btn-editar-tipo",s.innerHTML=`
13
- <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" style="margin-right: 4px; vertical-align: -1px;">
14
- <rect x="3" y="3" width="12" height="12" rx="1"></rect>
15
- <rect x="9" y="9" width="12" height="12" rx="1"></rect>
16
- </svg>
17
- <span>Editar tipo</span>
18
- `,s.addEventListener("click",()=>{t.onEditarTipo(r)}),d.appendChild(c),d.appendChild(s),t.tipoContainerElement.appendChild(e),t.tipoContainerElement.appendChild(d)}else{const e=document.createElement("div");e.className="ui-prop__tipo-autocad-bar";const o=document.createElement("select");o.className="ui-prop__tipo-select",t.tipos.forEach(d=>{const c=document.createElement("option");c.value=d.id,c.textContent=d.rotulo,String(d.id)===String(t.tipoSelecionadoId)&&(c.selected=!0),o.appendChild(c)}),o.addEventListener("change",()=>{t.onSelecionarTipo(o.value)});const i=document.createElement("div");i.className="ui-prop__tipo-autocad-acoes";const a=document.createElement("button");a.type="button",a.className="ui-prop__btn-autocad",a.title="Seleção rápida",a.setAttribute("aria-label","Seleção rápida"),a.innerHTML=`
19
- <svg width="11" height="11" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
20
- <polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon>
21
- </svg>
22
- `,a.addEventListener("click",()=>{t.onQuickSelect(r)});const n=document.createElement("button");n.type="button",n.className="ui-prop__btn-autocad",n.title="Selecionar objetos",n.setAttribute("aria-label","Selecionar objetos"),n.innerHTML=`
23
- <svg width="11" height="11" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
24
- <circle cx="12" cy="12" r="7"></circle>
25
- <line x1="12" y1="2" x2="12" y2="7"></line>
26
- <line x1="12" y1="17" x2="12" y2="22"></line>
27
- <line x1="2" y1="12" x2="7" y2="12"></line>
28
- <line x1="17" y1="12" x2="22" y2="12"></line>
29
- <line x1="12" y1="9" x2="12" y2="15" stroke-width="2.5"></line>
30
- <line x1="9" y1="12" x2="15" y2="12" stroke-width="2.5"></line>
31
- </svg>
32
- `,n.addEventListener("click",()=>{t.onSelectObjects(r)});const l=document.createElement("button");l.type="button",l.className="ui-prop__btn-autocad",l.title="Calculadora rápida",l.setAttribute("aria-label","Calculadora rápida"),l.innerHTML=`
33
- <svg width="11" height="11" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
34
- <rect x="4" y="2" width="16" height="20" rx="2"></rect>
35
- <line x1="8" y1="6" x2="16" y2="6"></line>
36
- <circle cx="8" cy="11" r="1" fill="currentColor"></circle>
37
- <circle cx="12" cy="11" r="1" fill="currentColor"></circle>
38
- <circle cx="16" cy="11" r="1" fill="currentColor"></circle>
39
- <circle cx="8" cy="15" r="1" fill="currentColor"></circle>
40
- <circle cx="12" cy="15" r="1" fill="currentColor"></circle>
41
- <circle cx="16" cy="15" r="1" fill="currentColor"></circle>
42
- </svg>
43
- `,l.addEventListener("click",()=>{t.onCalculadora(r)}),i.appendChild(a),i.appendChild(n),i.appendChild(l),e.appendChild(o),e.appendChild(i),t.tipoContainerElement.appendChild(e)}}function ot(t){let r=45;function e(i){const a=Math.max(20,Math.min(65,i));return r=a,t.hostElement.style.setProperty("--ui-prop-rotulo-largura",`${a}%`),t.splitterElement&&(t.splitterElement.style.left=`calc(${a}% - 4px)`),a}function o(){if(!t.splitterElement||!t.corpoElement)return;t.splitterListeners.cleanup();let i=!1;const a=n=>{if(n.button!==0)return;n.preventDefault(),n.stopPropagation(),i=!0,t.splitterElement.classList.add("ui-prop__splitter--ativo");try{t.splitterElement.setPointerCapture(n.pointerId)}catch{}const l=t.corpoElement.getBoundingClientRect(),d=s=>{if(!i)return;const u=l.width;if(u<=0)return;const p=s.clientX-l.left;let f=Math.max(80,Math.min(u-130,p))/u*100;f=Math.max(20,Math.min(65,f)),e(f)},c=s=>{if(i){i=!1,t.splitterElement.classList.remove("ui-prop__splitter--ativo");try{t.splitterElement.hasPointerCapture(s.pointerId)&&t.splitterElement.releasePointerCapture(s.pointerId)}catch{}t.splitterElement.removeEventListener("pointermove",d),t.splitterElement.removeEventListener("pointerup",c),t.splitterElement.removeEventListener("pointercancel",c),t.onLarguraAlterada(r),t.hostElement.dispatchEvent(new CustomEvent("ui-splitter-resize",{bubbles:!0,composed:!0,detail:{larguraPorcentagem:r}}))}};t.splitterElement.addEventListener("pointermove",d),t.splitterElement.addEventListener("pointerup",c),t.splitterElement.addEventListener("pointercancel",c)};t.splitterListeners.add(t.splitterElement,"pointerdown",a),t.splitterListeners.add(t.splitterElement,"dblclick",()=>{e(45),t.onLarguraAlterada(45),t.hostElement.dispatchEvent(new CustomEvent("ui-splitter-resize",{bubbles:!0,composed:!0,detail:{larguraPorcentagem:45}}))})}return{init:o,definirLarguraRotulo:e}}const Bt=`:host{display:flex;flex-direction:column;box-sizing:border-box;font-family:var(--ui-fonte-base, "Inter", sans-serif);font-size:var(--ui-tamanho-corpo-sm, 12px);color:var(--ui-cor-texto, #e1e1e6);background-color:var(--ui-cor-superficie, #141417);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));border-radius:var(--ui-raio-borda, 4px);overflow:hidden;width:100%;max-width:100%;height:100%;min-height:200px;-webkit-user-select:none;user-select:none;--ui-prop-altura-linha: 22px;--ui-prop-rotulo-largura: 45%}:host([densidade="compacta"]){--ui-prop-altura-linha: 19px;font-size:10.5px}:host([densidade="ultracompacta"]){--ui-prop-altura-linha: 17px;font-size:10px}:host([densidade="relaxada"]){--ui-prop-altura-linha: 28px;font-size:12px}:host([colapsado]){width:32px!important;min-width:32px!important;max-width:32px!important;height:100%!important;cursor:pointer;transition:width .2s cubic-bezier(.4,0,.2,1)}:host([colapsado]) .ui-prop__header,:host([colapsado]) .ui-prop__tipo-seletor-container,:host([colapsado]) .ui-prop__filtro-container,:host([colapsado]) .ui-prop__corpo-wrapper,:host([colapsado]) .ui-prop__footer,:host([colapsado]) .ui-prop__resizer-canto{display:none!important}:host([colapsado]) .ui-prop__faixa-estreita{display:flex!important;flex-direction:column;align-items:center;width:100%;height:100%;padding:8px 0;gap:10px;box-sizing:border-box;background-color:var(--ui-cor-fundo-elevado, #18181d);-webkit-user-select:none;user-select:none;cursor:pointer}.ui-prop__faixa-estreita{display:none}.ui-prop__faixa-icone{display:flex;align-items:center;justify-content:center;color:var(--ui-cor-destaque, #00E08A);flex-shrink:0}.ui-prop__faixa-btn-expandir{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 5%,transparent);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));border-radius:3px;color:var(--ui-cor-texto, #e1e1e6);cursor:pointer;padding:0;transition:all .15s ease;flex-shrink:0}.ui-prop__faixa-btn-expandir:hover{background-color:var(--ui-cor-destaque, #00E08A);color:#000;border-color:var(--ui-cor-destaque, #00E08A)}.ui-prop__faixa-texto{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--ui-cor-texto-secundario, #888899);margin-top:8px;flex:1;pointer-events:none}:host([colapsado]):hover .ui-prop__faixa-texto{color:var(--ui-cor-texto, #ffffff)}:host([flutuante]){position:fixed!important;z-index:var(--ui-z-docked-bar, 600)!important;box-shadow:var(--ui-sombra-lg, 0 16px 48px rgba(0, 0, 0, .75)),0 0 0 1px color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 14%,transparent),0 6px 14px #00000080!important;border-radius:6px!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);resize:both;overflow:hidden;max-width:95vw;max-height:95vh;min-width:220px;min-height:200px}:host([flutuante]) .ui-prop__header{cursor:grab;-webkit-user-select:none;user-select:none}:host([flutuante].arrastando) .ui-prop__header{cursor:grabbing!important}.ui-prop__resizer-canto{display:none}:host([flutuante]) .ui-prop__resizer-canto{display:block;position:absolute;bottom:0;right:0;width:14px;height:14px;cursor:nwse-resize;z-index:50;background:linear-gradient(135deg,transparent 50%,color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 25%,transparent) 50%,color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 25%,transparent) 65%,transparent 65%,transparent 80%,color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 25%,transparent) 80%);pointer-events:auto}.ui-prop__btn-icone--ativo{background-color:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 18%,transparent)!important;color:var(--ui-cor-destaque, #00E08A)!important}.ui-prop__container{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;flex:1;overflow:hidden;box-sizing:border-box}.ui-prop__header{display:flex;align-items:center;justify-content:space-between;height:22px;min-height:22px;padding:0 8px;background-color:var(--ui-cor-fundo-elevado, #1a1a1e);border-bottom:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));flex-shrink:0;box-sizing:border-box}:host([densidade="compacta"]) .ui-prop__header{height:20px;min-height:20px;padding:0 6px}:host([densidade="ultracompacta"]) .ui-prop__header{height:18px;min-height:18px;padding:0 5px}.ui-prop__header-titulo{display:flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;color:var(--ui-cor-texto, #ffffff);text-transform:uppercase;letter-spacing:.4px}:host([densidade="compacta"]) .ui-prop__header-titulo{font-size:10px;gap:4px}:host([densidade="ultracompacta"]) .ui-prop__header-titulo{font-size:9.5px;gap:3px}.ui-prop__header-icone{display:flex;align-items:center;color:var(--ui-cor-destaque, #00E08A)}.ui-prop__header-icone svg{width:12px;height:12px}:host([densidade="ultracompacta"]) .ui-prop__header-icone svg{width:10px;height:10px}.ui-prop__header-acoes{display:flex;align-items:center;gap:2px}.ui-prop__btn-icone{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:transparent;border:none;border-radius:2px;color:var(--ui-cor-texto-secundario, #888899);cursor:pointer;transition:all .15s ease;padding:0}.ui-prop__btn-icone:hover{background-color:var(--ui-cor-hover-menu, rgba(255, 255, 255, .08));color:var(--ui-cor-texto, #ffffff)}:host([densidade="compacta"]) .ui-prop__btn-icone{width:17px;height:17px}:host([densidade="ultracompacta"]) .ui-prop__btn-icone{width:16px;height:16px}.ui-prop__tipo-seletor-container{padding:3px 6px;background-color:var(--ui-cor-superficie, #141417);border-bottom:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .08));display:flex;flex-direction:column;gap:3px;flex-shrink:0;box-sizing:border-box}:host([densidade="compacta"]) .ui-prop__tipo-seletor-container{padding:2px 5px;gap:2px}:host([densidade="ultracompacta"]) .ui-prop__tipo-seletor-container{padding:1px 4px;gap:1px}.ui-prop__tipo-revit-card{display:flex;align-items:center;gap:10px;background-color:var(--ui-cor-fundo-card, #18181c);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));border-radius:var(--ui-raio-sm, 4px);padding:6px 8px;cursor:pointer;transition:border-color .15s ease}.ui-prop__tipo-revit-card:hover{border-color:var(--ui-cor-destaque, #00E08A)}.ui-prop__tipo-miniatura{width:32px;height:32px;border-radius:3px;background-color:var(--ui-cor-fundo-elevado, #24242a);display:flex;align-items:center;justify-content:center;color:var(--ui-cor-destaque, #00E08A);flex-shrink:0}.ui-prop__tipo-info{display:flex;flex-direction:column;flex:1;min-width:0}.ui-prop__tipo-nome{font-weight:600;font-size:12px;color:var(--ui-cor-texto, #ffffff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-prop__tipo-subtexto{font-size:11px;color:var(--ui-cor-texto-secundario, #888899);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-prop__tipo-revit-subbarra{display:flex;align-items:center;gap:6px}.ui-prop__tipo-select{flex:1;min-width:0;width:0;height:20px;background-color:transparent;color:var(--ui-cor-texto, #ffffff);border:none;border-radius:2px;padding:0 16px 0 2px;font-size:10.5px;font-weight:500;cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='8' height='5' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23888899' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 4px center;background-size:8px 5px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;box-sizing:border-box;transition:background-color .15s ease,color .15s ease}.ui-prop__tipo-select:hover{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 5%,transparent);color:#fff}.ui-prop__tipo-select:focus{background-color:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 8%,transparent);color:var(--ui-cor-destaque, #00E08A)}:host([densidade="compacta"]) .ui-prop__tipo-select{height:18px;font-size:10px;padding:0 14px 0 2px}:host([densidade="ultracompacta"]) .ui-prop__tipo-select{height:16px;font-size:9.5px;padding:0 12px 0 2px}.ui-prop__btn-editar-tipo{height:20px;padding:0 6px;background-color:transparent;border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));border-radius:2px;color:var(--ui-cor-texto, #ffffff);font-size:10.5px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s ease}:host([densidade="compacta"]) .ui-prop__btn-editar-tipo{height:18px;font-size:10px}:host([densidade="ultracompacta"]) .ui-prop__btn-editar-tipo{height:16px;font-size:9.5px}.ui-prop__btn-editar-tipo:hover{background-color:var(--ui-cor-botao-secundario-hover, #2a2a34);border-color:var(--ui-cor-destaque, #00E08A)}.ui-prop__tipo-autocad-bar{display:flex;align-items:center;gap:2px;width:100%;min-width:0;box-sizing:border-box;background:transparent}.ui-prop__tipo-autocad-acoes{display:flex;align-items:center;gap:1px;flex-shrink:0;border-left:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .08));padding-left:3px;margin-left:1px}.ui-prop__btn-autocad{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:transparent;border:none;border-radius:2px;color:var(--ui-cor-texto-secundario, #888899);cursor:pointer;padding:0;transition:all .15s ease}:host([densidade="compacta"]) .ui-prop__btn-autocad{width:18px;height:18px}:host([densidade="ultracompacta"]) .ui-prop__btn-autocad{width:16px;height:16px}.ui-prop__btn-autocad:hover{background-color:var(--ui-cor-hover-menu, rgba(255, 255, 255, .1));color:var(--ui-cor-destaque, #00E08A)}.ui-prop__btn-autocad:active{transform:scale(.92);background-color:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 15%,transparent)}.ui-prop__filtro-container{display:flex;align-items:center;padding:4px 8px;background-color:var(--ui-cor-fundo, #0b0b0d);border-bottom:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .08));gap:6px;flex-shrink:0}.ui-prop__filtro-icone{color:var(--ui-cor-texto-secundario, #888899);flex-shrink:0}.ui-prop__filtro-input{flex:1;background:transparent;border:none;outline:none;font-size:11px;color:var(--ui-cor-texto, #e1e1e6);padding:3px 0}.ui-prop__filtro-input::placeholder{color:var(--ui-cor-texto-secundario, #666677)}.ui-prop__corpo-wrapper{position:relative;flex:1;min-height:0;width:100%;overflow:hidden;display:flex;flex-direction:column}.ui-prop__corpo{flex:1;min-height:0;width:100%;overflow-y:auto;overflow-x:hidden;background-color:var(--ui-cor-superficie, #141417);position:relative;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 18%,transparent) var(--ui-cor-fundo, #0b0b0d)}.ui-prop__corpo::-webkit-scrollbar{width:8px}.ui-prop__corpo::-webkit-scrollbar-track{background:var(--ui-cor-fundo, #0b0b0d)}.ui-prop__corpo::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 18%,transparent);border-radius:var(--ui-raio-sm, 4px)}.ui-prop__corpo::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 30%,transparent)}.ui-prop__categoria{border-bottom:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .1))}.ui-prop__categoria-header{position:relative;z-index:25;display:flex;align-items:center;justify-content:space-between;height:21px;padding:0 6px;background-color:var(--ui-cor-fundo-elevado, #18181d);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600;font-size:10.5px;color:var(--ui-cor-texto, #ffffff);border-top:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .05));transition:background-color .15s ease;box-sizing:border-box}:host([densidade="compacta"]) .ui-prop__categoria-header{height:19px;font-size:10px;padding:0 5px}:host([densidade="ultracompacta"]) .ui-prop__categoria-header{height:17px;font-size:9.5px;padding:0 4px}.ui-prop__categoria-header:hover{background-color:var(--ui-cor-hover-menu, rgba(255, 255, 255, .06))}.ui-prop__categoria-titulo-bloco{display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-prop__categoria-seta{display:inline-flex;align-items:center;justify-content:center;font-size:9px;width:12px;height:12px;color:var(--ui-cor-texto-secundario, #888899);transition:transform .15s ease}.ui-prop__categoria--aberta .ui-prop__categoria-seta{transform:rotate(90deg)}.ui-prop__categoria-contador{font-size:10px;font-weight:400;color:var(--ui-cor-texto-secundario, #888899)}.ui-prop__categoria-conteudo{display:none}.ui-prop__categoria--aberta .ui-prop__categoria-conteudo{display:block}.ui-prop__linha{display:flex;align-items:stretch;min-height:var(--ui-prop-altura-linha, 24px);border-bottom:1px dotted var(--ui-cor-borda, rgba(255, 255, 255, .08));box-sizing:border-box;position:relative;z-index:1;transition:background-color .1s ease}.ui-prop__linha:hover{background-color:var(--ui-cor-hover-menu, rgba(255, 255, 255, .04))}.ui-prop__linha:focus-within{background-color:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 8%,transparent)}.ui-prop__linha:focus-within .ui-prop__col-rotulo{color:var(--ui-cor-texto, #ffffff);font-weight:500}.ui-prop__linha--modificada{background-color:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 5%,transparent)}.ui-prop__col-rotulo{width:var(--ui-prop-rotulo-largura, 45%);padding:1px 4px 1px 8px;display:flex;align-items:center;color:var(--ui-cor-texto-secundario, #9999aa);border-right:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .08));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;position:relative;flex-shrink:0;box-sizing:border-box}:host([densidade="compacta"]) .ui-prop__col-rotulo{padding:0 4px 0 6px;font-size:10px}:host([densidade="ultracompacta"]) .ui-prop__col-rotulo{padding:0 3px 0 5px;font-size:9.5px}.ui-prop__col-rotulo span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-prop__col-rotulo--scrub{cursor:ew-resize;-webkit-user-select:none;user-select:none;transition:color .15s ease,background-color .15s ease}.ui-prop__col-rotulo--scrub:hover{color:var(--ui-cor-destaque, #00E08A);background-color:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 5%,transparent)}.ui-prop__col-rotulo--arrastando{color:#000!important;background-color:var(--ui-cor-destaque, #00E08A)!important;font-weight:600;cursor:ew-resize!important}.ui-prop__col-rotulo--arrastando span{color:#000!important}.ui-prop__splitter{position:absolute;top:0;bottom:0;min-height:100%;left:calc(var(--ui-prop-rotulo-largura, 45%) - 4px);width:8px;cursor:col-resize;z-index:30;touch-action:none;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center}.ui-prop__splitter:after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;background-color:transparent;pointer-events:none;transition:background-color .15s ease,box-shadow .15s ease}.ui-prop__splitter:hover:after,.ui-prop__splitter--ativo:after{background-color:var(--ui-cor-destaque, #00E08A);box-shadow:0 0 6px color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 50%,transparent)}.ui-prop__splitter--ativo{background-color:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 8%,transparent)}.ui-prop__col-valor{width:calc(100% - var(--ui-prop-rotulo-largura, 45%));flex:1 1 0px;min-width:0!important;display:flex;align-items:stretch;padding:0;overflow:hidden;box-sizing:border-box;position:relative;transition:background-color .1s ease,box-shadow .1s ease}.ui-prop__col-valor:focus-within{background-color:var(--ui-cor-fundo, #0b0b0d);box-shadow:inset 0 0 0 1px var(--ui-cor-destaque, #00E08A)}.ui-prop__editor-input{width:100%;min-width:0;height:100%;min-height:var(--ui-prop-altura-linha, 24px);background:transparent;border:none;border-radius:0;color:var(--ui-cor-texto, #ffffff);font-family:inherit;font-size:11px;padding:0 8px;outline:none;box-sizing:border-box;transition:background-color .1s ease}.ui-prop__editor-input:hover{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 3%,transparent)}.ui-prop__editor-input--numero{text-align:right;font-family:var(--ui-fonte-codigo, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-variant-numeric:tabular-nums}.ui-prop__editor-input--calculando{color:var(--ui-cor-destaque, #00E08A)!important;font-weight:500}.ui-prop__col-valor:has(.ui-prop__editor-input--calculando){background-color:color-mix(in srgb,var(--ui-cor-primaria, #00E08A) 8%,transparent)!important;box-shadow:inset 0 0 0 1.5px var(--ui-cor-destaque, #00E08A)!important}.ui-prop__editor-select{flex:1 1 0px;min-width:0!important;width:0!important;max-width:100%;height:100%;min-height:var(--ui-prop-altura-linha, 24px);background-color:transparent;color:var(--ui-cor-texto, #ffffff);border:none;border-radius:0;font-size:11px;padding:0 20px 0 8px;outline:none;cursor:pointer;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23888899' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;background-size:8px 5px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;transition:background-color .1s ease}.ui-prop__editor-select:hover{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 3%,transparent)}.ui-prop__editor-select option{background-color:var(--ui-cor-fundo-elevado, #18181c);color:var(--ui-cor-texto, #ffffff)}.ui-prop__editor-cor-container{display:flex;align-items:center;gap:6px;width:100%;max-width:100%;min-width:0!important;height:100%;min-height:var(--ui-prop-altura-linha, 24px);cursor:pointer;padding:0 20px 0 8px;box-sizing:border-box;position:relative;border:none;border-radius:0;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23888899' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;background-size:8px 5px;transition:background-color .1s ease}.ui-prop__editor-cor-container:hover{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 4%,transparent)}.ui-prop__cor-amostra{width:13px;height:13px;border-radius:2px;border:1px solid color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 30%,transparent);flex-shrink:0;box-sizing:border-box}.ui-prop__cor-texto{flex:1 1 0px;min-width:0!important;width:0!important;font-size:11px;color:var(--ui-cor-texto, #ffffff);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-prop__cor-picker-oculto{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.ui-prop__editor-linha-container{display:flex;align-items:center;gap:6px;width:100%;max-width:100%;min-width:0!important;height:100%;min-height:var(--ui-prop-altura-linha, 24px);padding:0 0 0 8px;box-sizing:border-box;overflow:hidden;border:none;border-radius:0}.ui-prop__linha-amostra-svg{width:24px;height:10px;flex-shrink:0}.ui-prop__linha-amostra-svg line{stroke:var(--ui-cor-texto, #e1e1e6);stroke-width:1.5}.ui-prop__linha-select{flex:1 1 0px;min-width:0!important;width:0!important;max-width:100%;height:100%;background:transparent;color:var(--ui-cor-texto, #ffffff);border:none;border-radius:0;font-size:11px;padding:0 20px 0 4px;outline:none;cursor:pointer;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23888899' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;background-size:8px 5px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ui-prop__linha-select:hover{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 3%,transparent)}.ui-prop__linha-select option{background-color:var(--ui-cor-fundo-elevado, #18181c);color:var(--ui-cor-texto, #ffffff)}.ui-prop__editor-espessura-container{display:flex;align-items:center;gap:6px;width:100%;max-width:100%;min-width:0!important;height:100%;min-height:var(--ui-prop-altura-linha, 24px);padding:0 0 0 8px;box-sizing:border-box;overflow:hidden;border:none;border-radius:0}.ui-prop__espessura-amostra-svg{width:20px;height:10px;flex-shrink:0}.ui-prop__espessura-amostra-svg line{stroke:var(--ui-cor-texto, #e1e1e6)}.ui-prop__espessura-select{flex:1 1 0px;min-width:0!important;width:0!important;max-width:100%;height:100%;background:transparent;color:var(--ui-cor-texto, #ffffff);border:none;border-radius:0;font-size:11px;padding:0 20px 0 4px;outline:none;cursor:pointer;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23888899' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;background-size:8px 5px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ui-prop__espessura-select:hover{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 3%,transparent)}.ui-prop__espessura-select option{background-color:var(--ui-cor-fundo-elevado, #18181c);color:var(--ui-cor-texto, #ffffff)}.ui-prop__editor-cor-cad-container{display:flex;align-items:center;gap:6px;width:100%;max-width:100%;min-width:0!important;height:100%;min-height:var(--ui-prop-altura-linha, 24px);padding:0 0 0 8px;box-sizing:border-box;overflow:hidden;border:none;border-radius:0}.ui-prop__cor-cad-select{flex:1 1 0px;min-width:0!important;width:0!important;max-width:100%;height:100%;background:transparent;color:var(--ui-cor-texto, #ffffff);border:none;border-radius:0;font-size:11px;padding:0 20px 0 4px;outline:none;cursor:pointer;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23888899' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;background-size:8px 5px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ui-prop__cor-cad-select:hover{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 3%,transparent)}.ui-prop__cor-cad-select option{background-color:var(--ui-cor-fundo-elevado, #18181c);color:var(--ui-cor-texto, #ffffff)}.ui-prop__editor-booleano{display:flex;align-items:center;gap:6px;width:100%;height:100%;min-height:var(--ui-prop-altura-linha, 24px);cursor:pointer;padding:0 8px;box-sizing:border-box;-webkit-user-select:none;user-select:none}.ui-prop__editor-booleano:hover{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 3%,transparent)}.ui-prop__checkbox-custom{width:13px;height:13px;border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .25));border-radius:2px;background-color:var(--ui-cor-fundo, #0b0b0d);display:flex;align-items:center;justify-content:center;transition:all .15s ease}.ui-prop__checkbox-custom--marcado{background-color:var(--ui-cor-destaque, #00E08A);border-color:var(--ui-cor-destaque, #00E08A);color:#000}.ui-prop__booleano-rotulo{font-size:11px;color:var(--ui-cor-texto, #ffffff)}.ui-prop__btn-acao-inline{width:100%;height:100%;min-height:var(--ui-prop-altura-linha, 24px);padding:0 8px;background-color:transparent;border:none;border-radius:0;color:var(--ui-cor-texto, #ffffff);font-size:11px;font-weight:500;cursor:pointer;white-space:nowrap;text-align:left;transition:all .15s ease;box-sizing:border-box}.ui-prop__btn-acao-inline:hover{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 4%,transparent);color:var(--ui-cor-destaque, #00E08A)}.ui-prop__valor-readonly{display:flex;align-items:center;width:100%;height:100%;min-height:var(--ui-prop-altura-linha, 24px);font-size:11px;color:var(--ui-cor-texto-secundario, #777788);padding:0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;-webkit-user-select:text;user-select:text}.ui-prop__valor-readonly--numero{justify-content:flex-end;font-family:var(--ui-fonte-codigo, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace);font-variant-numeric:tabular-nums}.ui-prop__unidade-sufixo{display:flex;align-items:center;font-size:10px;color:var(--ui-cor-texto-secundario, #777788);padding-right:8px;flex-shrink:0;-webkit-user-select:none;user-select:none}.ui-prop__vazio{padding:24px 16px;text-align:center;color:var(--ui-cor-texto-secundario, #888899);font-size:12px}.ui-prop__footer{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background-color:var(--ui-cor-fundo-elevado, #18181c);border-top:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .1));flex-shrink:0}.ui-prop__link-ajuda{font-size:11px;color:var(--ui-cor-destaque, #00E08A);text-decoration:none;cursor:pointer}.ui-prop__link-ajuda:hover{text-decoration:underline}.ui-prop__footer-botoes{display:flex;gap:6px}.ui-prop__btn-aplicar{height:24px;padding:0 12px;background-color:var(--ui-cor-destaque, #00E08A);color:#000;border:none;border-radius:3px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s ease}.ui-prop__btn-aplicar:disabled{background-color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 10%,transparent);color:color-mix(in srgb,var(--ui-cor-texto, #e1e1e6) 30%,transparent);cursor:not-allowed}.ui-prop__btn-desfazer{height:24px;padding:0 8px;background:transparent;color:var(--ui-cor-texto-secundario, #888899);border:1px solid var(--ui-cor-borda, rgba(255, 255, 255, .12));border-radius:3px;font-size:11px;cursor:pointer;transition:all .15s ease}.ui-prop__btn-desfazer:hover:not(:disabled){background-color:var(--ui-cor-hover-menu, rgba(255, 255, 255, .08));color:var(--ui-cor-texto, #ffffff)}.ui-prop__btn-desfazer:disabled{opacity:.4;cursor:not-allowed}@media (max-width: 640px){:host{--ui-prop-altura-linha: 28px;font-size:13px}.ui-prop__btn-icone{min-width:28px;min-height:28px}.ui-prop__footer-botoes{gap:8px}.ui-prop__btn-aplicar,.ui-prop__btn-desfazer{height:30px;font-size:12px;padding:0 12px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.ui-prop__editor-input,.ui-prop__editor-select{touch-action:manipulation;font-size:14px}}.ui-prop__editor--misto,.ui-prop__editor--misto .ui-prop__booleano-rotulo,.ui-prop__editor--misto .ui-prop__cor-texto,.ui-prop__editor--misto select,select.ui-prop__editor--misto{font-style:italic;color:var(--ui-prop-misto-cor, var(--ui-cor-texto-secundario, #a0a0ab))}.ui-prop__editor-input.ui-prop__editor--misto::placeholder{font-style:italic;color:var(--ui-prop-misto-cor, var(--ui-cor-texto-secundario, #a0a0ab));opacity:1}.ui-prop__editor--misto option:not([data-misto]),select.ui-prop__editor--misto option:not([data-misto]){font-style:normal;color:var(--ui-cor-texto, #ffffff)}.ui-prop__editor--misto svg{opacity:.35}.ui-prop__checkbox-custom--misto{border-color:var(--ui-prop-misto-cor, var(--ui-cor-texto-secundario, #a0a0ab));color:var(--ui-prop-misto-cor, var(--ui-cor-texto-secundario, #a0a0ab));font-style:normal}.ui-prop__cor-amostra--misto{background:linear-gradient(to top right,transparent calc(50% - 1px),var(--ui-prop-misto-cor, var(--ui-cor-texto-secundario, #a0a0ab)) 50%,transparent calc(50% + 1px))}`;function It(){return`
44
- <style>${Bt}</style>
45
- <div class="ui-prop__container" id="container">
46
- <!-- 0. Faixa Vertical da Coluna Estreita (visível quando colapsado) -->
47
- <div class="ui-prop__faixa-estreita" id="faixa-estreita" title="Clique para expandir painel">
48
- <span class="ui-prop__faixa-icone">
49
- <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5">
50
- <rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect>
51
- <line x1="3" y1="9" x2="21" y2="9"></line>
52
- <line x1="9" y1="21" x2="9" y2="9"></line>
53
- </svg>
54
- </span>
55
- <button type="button" class="ui-prop__faixa-btn-expandir" id="btn-expandir-faixa" title="Expandir painel de propriedades">
56
- <svg width="11" height="11" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2">
57
- <polyline points="9 18 15 12 9 6"></polyline>
58
- <line x1="5" y1="5" x2="5" y2="19"></line>
59
- </svg>
60
- </button>
61
- <span class="ui-prop__faixa-texto">PROPRIEDADES</span>
62
- </div>
63
-
64
- <!-- 1. Header Superior -->
65
- <header class="ui-prop__header" id="header">
66
- <div class="ui-prop__header-titulo">
67
- <span class="ui-prop__header-icone">
68
- <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">
69
- <rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect>
70
- <line x1="3" y1="9" x2="21" y2="9"></line>
71
- <line x1="9" y1="21" x2="9" y2="9"></line>
72
- </svg>
73
- </span>
74
- <span id="header-titulo-texto">Propriedades</span>
75
- </div>
76
- <div class="ui-prop__header-acoes">
77
- <button type="button" class="ui-prop__btn-icone" id="btn-flutuante" title="Desacoplar / Modo flutuante (CAD)" aria-label="Modo flutuante">
78
- <svg width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round">
79
- <rect x="3" y="3" width="14" height="14" rx="2"></rect>
80
- <polyline points="15 3 21 3 21 9"></polyline>
81
- <line x1="10" y1="14" x2="21" y2="3"></line>
82
- </svg>
83
- </button>
84
- <button type="button" class="ui-prop__btn-icone" id="btn-colapsar-horizontal" title="Recolher para coluna estreita" aria-label="Recolher para coluna estreita">
85
- <svg width="11" height="11" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round">
86
- <polyline points="11 17 6 12 11 7"></polyline>
87
- <line x1="18" y1="5" x2="18" y2="19"></line>
88
- </svg>
89
- </button>
90
- <button type="button" class="ui-prop__btn-icone" id="btn-densidade" title="Alternar compressão vertical" aria-label="Alternar densidade vertical">
91
- <svg width="11" height="11" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round">
92
- <polyline points="4 7 12 11 20 7"></polyline>
93
- <polyline points="4 17 12 13 20 17"></polyline>
94
- <line x1="4" y1="12" x2="20" y2="12"></line>
95
- </svg>
96
- </button>
97
- <button type="button" class="ui-prop__btn-icone" id="btn-expandir-tudo" title="Expandir/Recolher Tudo" aria-label="Expandir ou recolher tudo">
98
- <svg width="11" height="11" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
99
- <polyline points="7 13 12 18 17 13"></polyline>
100
- <polyline points="7 6 12 11 17 6"></polyline>
101
- </svg>
102
- </button>
103
- <button type="button" class="ui-prop__btn-icone" id="btn-fechar" title="Fechar" aria-label="Fechar" style="display: none;">
104
- ✕
105
- </button>
106
- </div>
107
- </header>
108
-
109
- <!-- 2. Seletor de Tipo (AutoCAD / Revit) -->
110
- <div class="ui-prop__tipo-seletor-container" id="tipo-container" style="display: none;"></div>
111
-
112
- <!-- 3. Busca Rápida de Propriedades -->
113
- <div class="ui-prop__filtro-container" id="filtro-container" style="display: none;">
114
- <svg class="ui-prop__filtro-icone" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
115
- <circle cx="11" cy="11" r="8"></circle>
116
- <line x1="21" y1="21" x2="16.65" y2="16.65"></line>
117
- </svg>
118
- <input type="text" class="ui-prop__filtro-input" id="filtro-input" placeholder="Filtrar propriedades..." />
119
- </div>
120
-
121
- <!-- 4. Corpo Rolável com Grade de Categorias -->
122
- <div class="ui-prop__corpo-wrapper" id="corpo-wrapper">
123
- <div class="ui-prop__splitter" id="splitter"></div>
124
- <div class="ui-prop__corpo" id="corpo">
125
- <div class="ui-prop__lista-categorias" id="lista-categorias"></div>
126
- </div>
127
- </div>
128
-
129
- <!-- 5. Rodapé com Ações (Aplicar / Desfazer) -->
130
- <footer class="ui-prop__footer" id="footer" style="display: none;">
131
- <a class="ui-prop__link-ajuda" id="link-ajuda" href="#" role="button">Ajuda de propriedades</a>
132
- <div class="ui-prop__footer-botoes">
133
- <button type="button" class="ui-prop__btn-desfazer" id="btn-desfazer" disabled>Desfazer</button>
134
- <button type="button" class="ui-prop__btn-aplicar" id="btn-aplicar" disabled>Aplicar</button>
135
- </div>
136
- </footer>
137
-
138
- <!-- 6. Grip para redimensionar no modo flutuante -->
139
- <div class="ui-prop__resizer-canto" id="resizer-canto" title="Redimensionar"></div>
140
- </div>
141
- `}function it(t){const{listaContainer:r,categorias:e,termoBusca:o,onToggleCategoria:i,linhaCtx:a}=t;if(r.innerHTML="",!e||e.length===0){const l=document.createElement("div");l.className="ui-prop__vazio",l.textContent="Nenhuma propriedade disponível.",r.appendChild(l);return}const n=document.createDocumentFragment();e.forEach(l=>{const d=(l.propriedades||[]).filter(g=>o?g.rotulo.toLowerCase().includes(o)||String(g.id).toLowerCase().includes(o):!0);if(o&&d.length===0)return;const c=!!o||l.aberto!==!1,s=document.createElement("div");s.className=`ui-prop__categoria ${c?"ui-prop__categoria--aberta":""}`,s.setAttribute("data-cat-id",l.id);const u=document.createElement("div");u.className="ui-prop__categoria-header",u.setAttribute("role","button"),u.tabIndex=0,u.setAttribute("aria-expanded",String(c));const p=document.createElement("div");p.className="ui-prop__categoria-titulo-bloco";const h=document.createElement("span");h.className="ui-prop__categoria-seta",h.textContent="▶";const m=document.createElement("span");m.textContent=l.titulo,p.appendChild(h),p.appendChild(m);const x=document.createElement("span");x.className="ui-prop__categoria-contador",x.textContent=String(d.length),u.appendChild(p),u.appendChild(x),u.addEventListener("click",()=>i(l.id)),u.addEventListener("keydown",g=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),i(l.id))});const f=document.createElement("div");f.className="ui-prop__categoria-conteudo",d.forEach(g=>{const v=at(l.id,g,a);f.appendChild(v)}),s.appendChild(u),s.appendChild(f),n.appendChild(s)}),r.appendChild(n)}function at(t,r,e){const o=document.createElement("div");o.className="ui-prop__linha",o.setAttribute("data-prop-id",r.id);const i=e.valoresAtuais[r.id]!==void 0?e.valoresAtuais[r.id]:q(r),a=r.id in e.valoresOriginais?e.valoresOriginais[r.id]:q(r);D(i,a)||o.classList.add("ui-prop__linha--modificada"),o.classList.toggle("ui-prop__linha--misto",C(i)),o.addEventListener("dblclick",()=>{const s=o.querySelector('input:not([type="color"]):not(.ui-prop__cor-picker-oculto), select, .ui-prop__btn-acao-inline');s&&(s.focus(),s instanceof HTMLInputElement&&s.select())});const n=document.createElement("div");n.className="ui-prop__col-rotulo",n.title=r.rotulo;const l=document.createElement("span");l.textContent=r.rotulo,n.appendChild(l),r.tipo==="numero"&&!r.somenteLeitura&&Pt(n,t,r,e);const d=document.createElement("div");d.className="ui-prop__col-valor";const c=tt(t,r,i,e.editorCtx);if(d.appendChild(c),r.unidade){const s=document.createElement("span");s.className="ui-prop__unidade-sufixo",s.textContent=r.unidade,d.appendChild(s)}return o.appendChild(n),o.appendChild(d),o}function Pt(t,r,e,o){t.classList.add("ui-prop__col-rotulo--scrub"),t.title=`${e.rotulo} (Arraste para ajustar, duplo-clique para editar)`;let i=0,a=0,n=!1;t.addEventListener("pointerdown",l=>{if(l.button!==0||C(o.editorCtx.obterValorAtual(e.id)))return;i=l.clientX;const d=o.editorCtx.obterValorAtual(e.id);a=typeof d=="number"?d:parseFloat(String(d||0))||0,n=!1;try{t.setPointerCapture(l.pointerId)}catch{}t.classList.add("ui-prop__col-rotulo--arrastando");const c=u=>{const p=u.clientX-i;if(Math.abs(p)>2&&(n=!0),n){let h=1;u.shiftKey?h=.1:(u.ctrlKey||u.metaKey)&&(h=10);const m=e.casasDecimais!==void 0?e.casasDecimais:2,x=Math.pow(10,-Math.min(m,2));let f=a+p*x*h;e.casasDecimais!==void 0?f=Number(f.toFixed(e.casasDecimais)):f=Math.round(f*100)/100,o.editorCtx.registrarAlteracao(r,e.id,f),o.onAtualizarCampoVisual(e.id,f)}},s=u=>{t.classList.remove("ui-prop__col-rotulo--arrastando");try{t.hasPointerCapture(u.pointerId)&&t.releasePointerCapture(u.pointerId)}catch{}t.removeEventListener("pointermove",c),t.removeEventListener("pointerup",s),t.removeEventListener("pointercancel",s)};t.addEventListener("pointermove",c),t.addEventListener("pointerup",s),t.addEventListener("pointercancel",s)})}const he=300,Ft=480,F=new WeakMap;function nt(t){var o,i,a;const r=t.hasAttribute("flutuante"),e=t.style;if(r){const n=F.get(t)??{acoplado:{width:"",height:""}};n.flutuante={left:e.left,top:e.top,width:e.width,height:e.height},F.set(t,n),t.removeAttribute("flutuante"),e.left="",e.top="",e.right="",e.bottom="",e.position="",e.zIndex="",e.width=n.acoplado.width,e.height=n.acoplado.height}else{const n={acoplado:{width:e.width,height:e.height},flutuante:(o=F.get(t))==null?void 0:o.flutuante};if(F.set(t,n),t.setAttribute("flutuante",""),e.position="fixed",(i=n.flutuante)!=null&&i.left||(a=n.flutuante)!=null&&a.top)e.left=n.flutuante.left,e.top=n.flutuante.top,e.width=n.flutuante.width,e.height=n.flutuante.height;else if(!e.left&&!e.top){const l=Math.max(20,(typeof window<"u"?window.innerWidth:1024)-he-30);e.left=`${l}px`,e.top="70px",e.width=`${he}px`,e.height=`${Ft}px`}}return!r}function st(t,r,e){const o=r.getElementById("header");if(o){let a=null,n=0,l=0,d=0,c=0;const s=p=>{if(a===null)return;const h=p.clientX-n,m=p.clientY-l;let x=d+h,f=c+m;const g=Math.max(0,(typeof window<"u"?window.innerWidth:1024)-t.offsetWidth),v=Math.max(0,(typeof window<"u"?window.innerHeight:768)-30);x=Math.max(0,Math.min(g,x)),f=Math.max(0,Math.min(v,f)),t.style.left=`${x}px`,t.style.top=`${f}px`,t.style.right="auto",t.style.bottom="auto"},u=p=>{if(a!==null){try{o.releasePointerCapture(p.pointerId)}catch{}o.removeEventListener("pointermove",s),o.removeEventListener("pointerup",u),o.removeEventListener("pointercancel",u),a=null,t.classList.remove("arrastando"),t.dispatchEvent(new CustomEvent("ui-mover",{bubbles:!0,composed:!0,detail:{left:t.style.left,top:t.style.top}}))}};e.add(o,"pointerdown",p=>{if(!t.hasAttribute("flutuante")||p.target.closest("button, input, select, a")||p.button!==0)return;p.preventDefault(),a=p.pointerId,n=p.clientX,l=p.clientY;const m=t.getBoundingClientRect();d=m.left,c=m.top,t.classList.add("arrastando");try{o.setPointerCapture(p.pointerId)}catch{}o.addEventListener("pointermove",s),o.addEventListener("pointerup",u),o.addEventListener("pointercancel",u)})}const i=r.getElementById("resizer-canto");if(i){let a=null,n=0,l=0,d=0,c=0;const s=p=>{if(a===null)return;const h=Math.max(200,n+(p.clientX-d)),m=Math.max(180,l+(p.clientY-c));t.style.width=`${h}px`,t.style.height=`${m}px`},u=p=>{if(a!==null){try{i.releasePointerCapture(p.pointerId)}catch{}i.removeEventListener("pointermove",s),i.removeEventListener("pointerup",u),i.removeEventListener("pointercancel",u),a=null,t.dispatchEvent(new CustomEvent("ui-redimensionar",{bubbles:!0,composed:!0,detail:{width:t.style.width,height:t.style.height}}))}};e.add(i,"pointerdown",p=>{if(!t.hasAttribute("flutuante")||p.button!==0)return;p.preventDefault(),p.stopPropagation(),a=p.pointerId,d=p.clientX,c=p.clientY;const h=t.getBoundingClientRect();n=h.width,l=h.height;try{i.setPointerCapture(p.pointerId)}catch{}i.addEventListener("pointermove",s),i.addEventListener("pointerup",u),i.addEventListener("pointercancel",u)})}}function lt(t){return t==="compacta"?"ultracompacta":t==="ultracompacta"?"padrao":"compacta"}class dt{constructor(r){b(this,"valoresOriginais",{});b(this,"valoresAtuais",{});this.ctx=r}inicializarCategorias(r){this.valoresOriginais={},this.valoresAtuais={};const e=new Set;r.forEach(o=>{(o.propriedades||[]).forEach(i=>{e.has(i.id)&&typeof console<"u"&&console.warn(`[ui-tabela-propriedades] id de propriedade repetido: "${i.id}". Os valores são indexados por id e serão compartilhados.`),e.add(i.id);const a=q(i);this.valoresOriginais[i.id]=a,this.valoresAtuais[i.id]=a})}),this.ctx.onAtualizarBotoesFooter(!1)}get isDirty(){return Object.keys(this.valoresAtuais).some(r=>this.isModificada(r))}isModificada(r){return!D(this.valoresAtuais[r],this.valoresOriginais[r])}getValores(){return{...this.valoresAtuais}}getValoresOriginais(){return{...this.valoresOriginais}}setValores(r){!r||typeof r!="object"||(Object.keys(r).forEach(e=>{this.valoresAtuais[e]=r[e],this.valoresOriginais[e]=r[e]}),this.ctx.onAtualizarBotoesFooter(this.isDirty))}obterValor(r){return this.valoresAtuais[r]}definirValor(r,e,o=!0){const i=this.valoresAtuais[r];D(i,e)||(this.valoresAtuais[r]=e,this.aposAlterar(r),this.ctx.onAtualizarCampoVisual(r,e),o&&this.emitirAlteracao(r,e,i,this.categoriaDe(r)))}registrarAlteracao(r,e,o){const i=this.valoresAtuais[e];D(i,o)||(this.valoresAtuais[e]=o,this.aposAlterar(e),this.ctx.isModoManual()||this.emitirAlteracao(e,o,i,r))}aplicar(){var e;if(!this.isDirty)return;this.valoresOriginais={...this.valoresAtuais},this.ctx.onAtualizarBotoesFooter(!1);const r=(e=this.ctx.hostElement.shadowRoot)==null?void 0:e.querySelectorAll(".ui-prop__linha--modificada");r==null||r.forEach(o=>o.classList.remove("ui-prop__linha--modificada")),this.ctx.hostElement.dispatchEvent(new CustomEvent("ui-aplicar",{bubbles:!0,composed:!0,detail:{valores:{...this.valoresAtuais}}}))}desfazer(){this.isDirty&&(this.valoresAtuais={...this.valoresOriginais},this.ctx.onAtualizarBotoesFooter(!1),this.ctx.onRenderCategorias(),this.ctx.hostElement.dispatchEvent(new CustomEvent("ui-desfazer",{bubbles:!0,composed:!0,detail:{valores:{...this.valoresAtuais}}})))}aposAlterar(r){const e=ie(this.ctx.hostElement.shadowRoot,r);e==null||e.classList.toggle("ui-prop__linha--modificada",this.isModificada(r)),e==null||e.classList.toggle("ui-prop__linha--misto",C(this.valoresAtuais[r])),this.ctx.onAtualizarBotoesFooter(this.isDirty)}categoriaDe(r){var e;for(const o of this.ctx.getCategorias())if((e=o.propriedades)!=null&&e.some(i=>i.id===r))return o.id;return""}emitirAlteracao(r,e,o,i=""){this.ctx.hostElement.dispatchEvent(new CustomEvent("ui-propriedade-alterada",{bubbles:!0,composed:!0,detail:{id:r,categoriaId:i,valor:e,valorAnterior:o,todosValores:{...this.valoresAtuais}}}))}}function ct(t){const{shadow:r,listeners:e,host:o,onToggleExpandirTodas:i,onFiltrar:a,onAplicar:n,onDesfazer:l,onAlternarDensidade:d,onAlternarFlutuante:c,onAlternarColapsoHorizontal:s}=t,u=r.getElementById("btn-flutuante");u&&c&&e.add(u,"click",c);const p=r.getElementById("btn-colapsar-horizontal");p&&s&&e.add(p,"click",s);const h=r.getElementById("faixa-estreita");h&&s&&e.add(h,"click",s);const m=r.getElementById("btn-expandir-faixa");m&&s&&e.add(m,"click",_=>{_.stopPropagation(),s()});const x=r.getElementById("btn-densidade");x&&d&&e.add(x,"click",d);const f=r.getElementById("btn-expandir-tudo");f&&e.add(f,"click",i);const g=r.getElementById("btn-fechar");g&&e.add(g,"click",()=>{o.dispatchEvent(new CustomEvent("ui-fechar",{bubbles:!0,composed:!0}))});const v=r.getElementById("filtro-input");v&&e.add(v,"input",()=>{const _=(v.value||"").trim().toLowerCase();a(_)});const y=r.getElementById("btn-aplicar");y&&e.add(y,"click",n);const k=r.getElementById("btn-desfazer");k&&e.add(k,"click",l);const w=r.getElementById("link-ajuda");w&&e.add(w,"click",_=>{_.preventDefault(),o.dispatchEvent(new CustomEvent("ui-ajuda",{bubbles:!0,composed:!0}))})}function L(t,r){const e=t.getElementById("header-titulo-texto");e&&(e.textContent=r.getAttribute("titulo")||"Propriedades");const o=t.getElementById("btn-fechar");o&&(o.style.display=r.hasAttribute("fechavel")?"inline-flex":"none");const i=t.getElementById("btn-flutuante");if(i){const c=r.hasAttribute("flutuante");i.title=c?"Acoplar painel (Dock)":"Desacoplar / Modo flutuante (CAD)",i.classList.toggle("ui-prop__btn-icone--ativo",c)}const a=t.getElementById("btn-colapsar-horizontal");if(a){const c=r.hasAttribute("colapsado");a.title=c?"Expandir painel":"Recolher para coluna estreita",a.classList.toggle("ui-prop__btn-icone--ativo",c)}const n=t.getElementById("btn-densidade");if(n){const c=r.getAttribute("densidade")||"padrão";n.title=`Compressão vertical: ${c} (clique para alternar)`}const l=t.getElementById("filtro-container");l&&(l.style.display=r.hasAttribute("filtro")?"flex":"none");const d=t.getElementById("footer");d&&(d.style.display=r.getAttribute("modo-aplicar")==="manual"?"flex":"none")}class ut extends $.SafeHTMLElement{constructor(){super();b(this,"shadow");b(this,"listeners",new H.ListenerBag);b(this,"splitterListeners",new H.ListenerBag);b(this,"controladorSplitter");b(this,"gerenciadorValores");b(this,"_categorias",[]);b(this,"_tipos",[]);b(this,"_tipoSelecionadoId","");b(this,"_termoBusca","");b(this,"_larguraRotuloPorcentagem",45);b(this,"tipoContainerElement");b(this,"corpoElement");b(this,"btnAplicarElement");b(this,"btnDesfazerElement");b(this,"splitterElement");this.shadow=this.attachShadow({mode:"open"}),this.shadow.innerHTML=It(),this.tipoContainerElement=this.shadow.getElementById("tipo-container"),this.corpoElement=this.shadow.getElementById("corpo"),this.btnAplicarElement=this.shadow.getElementById("btn-aplicar"),this.btnDesfazerElement=this.shadow.getElementById("btn-desfazer"),this.splitterElement=this.shadow.getElementById("splitter"),this.gerenciadorValores=new dt({hostElement:this,getCategorias:()=>this._categorias,onAtualizarBotoesFooter:e=>{this.btnAplicarElement.disabled=!e,this.btnDesfazerElement.disabled=!e},onAtualizarCampoVisual:(e,o)=>Z(this.shadow,e,o),onRenderCategorias:()=>this.renderCategorias(),isModoManual:()=>this.getAttribute("modo-aplicar")==="manual"}),this.controladorSplitter=ot({hostElement:this,corpoElement:this.corpoElement,splitterElement:this.splitterElement,splitterListeners:this.splitterListeners,onLarguraAlterada:e=>{this._larguraRotuloPorcentagem=e}})}static get observedAttributes(){return["titulo","estilo-visual","modo-aplicar","filtro","densidade","largura-rotulo","fechavel","colapsado","flutuante","texto-misto"]}get larguraRotuloPorcentagem(){return this._larguraRotuloPorcentagem}connectedCallback(){this.listeners.cleanup(),ct({shadow:this.shadow,listeners:this.listeners,host:this,onToggleExpandirTodas:()=>this.toggleExpandirTodas(),onFiltrar:e=>{this._termoBusca=e,this.renderCategorias()},onAplicar:()=>this.aplicar(),onDesfazer:()=>this.desfazer(),onAlternarDensidade:()=>this.alternarDensidade(),onAlternarFlutuante:()=>this.alternarFlutuante(),onAlternarColapsoHorizontal:()=>this.alternarColapsoHorizontal()}),st(this,this.shadow,this.listeners),this.controladorSplitter.init(),this.syncState()}disconnectedCallback(){this.listeners.cleanup(),this.splitterListeners.cleanup()}attributeChangedCallback(e,o,i){if(o!==i)switch(e){case"largura-rotulo":{const a=parseFloat(i??"");isNaN(a)||(this._larguraRotuloPorcentagem=this.controladorSplitter.definirLarguraRotulo(a));return}case"estilo-visual":this.renderSeletorTipos();return;case"texto-misto":this.renderCategorias();return;case"filtro":if(L(this.shadow,this),i===null&&this._termoBusca){this._termoBusca="";const a=this.shadow.getElementById("filtro-input");a&&(a.value=""),this.renderCategorias()}return;default:L(this.shadow,this)}}get categorias(){return this._categorias}set categorias(e){this._categorias=Array.isArray(e)?e:[],this.gerenciadorValores.inicializarCategorias(this._categorias),this.renderCategorias()}get textoMisto(){const e=this.getAttribute("texto-misto");return e&&e.trim()?e:W}set textoMisto(e){typeof e=="string"&&e.trim()?this.setAttribute("texto-misto",e):this.removeAttribute("texto-misto")}get tipos(){return this._tipos}set tipos(e){this._tipos=Array.isArray(e)?e:[],this.renderSeletorTipos()}get tipoSelecionado(){return this._tipoSelecionadoId}set tipoSelecionado(e){this._tipoSelecionadoId=e,this.renderSeletorTipos()}get valores(){return this.gerenciadorValores.getValores()}set valores(e){this.gerenciadorValores.setValores(e),this.renderCategorias()}get isDirty(){return this.gerenciadorValores.isDirty}get dirty(){return this.gerenciadorValores.isDirty}obterValor(e){return this.gerenciadorValores.obterValor(e)}definirValor(e,o,i=!0){this.gerenciadorValores.definirValor(e,o,i)}aplicar(){this.gerenciadorValores.aplicar()}desfazer(){this.gerenciadorValores.desfazer()}expandirTudo(){Ie(this.shadow,this._categorias)}colapsarTudo(){Pe(this.shadow,this._categorias)}toggleCategoria(e){Fe(this.shadow,this,this._categorias,e)}get densidade(){return this.getAttribute("densidade")||"padrao"}set densidade(e){!e||e==="padrao"?this.removeAttribute("densidade"):this.setAttribute("densidade",e)}alternarDensidade(){const e=lt(this.getAttribute("densidade")||"padrao");return e==="padrao"?this.removeAttribute("densidade"):this.setAttribute("densidade",e),this.dispatchEvent(new CustomEvent("ui-densidade-alterada",{bubbles:!0,composed:!0,detail:{densidade:e}})),L(this.shadow,this),e}get flutuante(){return this.hasAttribute("flutuante")}set flutuante(e){!!e!==this.hasAttribute("flutuante")&&this.alternarFlutuante()}get colapsado(){return this.hasAttribute("colapsado")}set colapsado(e){!!e!==this.hasAttribute("colapsado")&&this.alternarColapsoHorizontal()}alternarFlutuante(){const e=nt(this);return L(this.shadow,this),this.dispatchEvent(new CustomEvent("ui-flutuante-alterado",{bubbles:!0,composed:!0,detail:{flutuante:e,left:this.style.left,top:this.style.top,width:this.style.width,height:this.style.height}})),e}alternarColapsoHorizontal(){const e=this.hasAttribute("colapsado");e?this.removeAttribute("colapsado"):this.setAttribute("colapsado","");const o=!e;return L(this.shadow,this),this.dispatchEvent(new CustomEvent("ui-colapso-horizontal",{bubbles:!0,composed:!0,detail:{colapsado:o}})),o}syncState(){L(this.shadow,this);const e=this.getAttribute("largura-rotulo");if(e){const o=parseFloat(e);isNaN(o)||(this._larguraRotuloPorcentagem=this.controladorSplitter.definirLarguraRotulo(o))}this.renderSeletorTipos(),this.renderCategorias()}toggleExpandirTodas(){this._categorias.some(o=>o.aberto===!1)?this.expandirTudo():this.colapsarTudo()}renderSeletorTipos(){rt({tipoContainerElement:this.tipoContainerElement,tipos:this._tipos,tipoSelecionadoId:this._tipoSelecionadoId,estiloVisual:this.getAttribute("estilo-visual")||"autocad",onSelecionarTipo:e=>{this._tipoSelecionadoId=e,this.renderSeletorTipos();const o=this._tipos.find(i=>String(i.id)===String(e));this.dispatchEvent(new CustomEvent("ui-tipo-alterado",{bubbles:!0,composed:!0,detail:{id:e,tipo:o}}))},onEditarTipo:e=>this.dispatchEvent(new CustomEvent("ui-editar-tipo-clique",{bubbles:!0,composed:!0,detail:{tipo:e}})),onQuickSelect:e=>this.dispatchEvent(new CustomEvent("ui-quick-select",{bubbles:!0,composed:!0,detail:{tipo:e}})),onSelectObjects:e=>this.dispatchEvent(new CustomEvent("ui-selecionar-objetos",{bubbles:!0,composed:!0,detail:{tipo:e}})),onCalculadora:e=>this.dispatchEvent(new CustomEvent("ui-calculadora",{bubbles:!0,composed:!0,detail:{tipo:e}}))})}renderCategorias(){const e=this.shadow.getElementById("lista-categorias");e&&it({listaContainer:e,categorias:this._categorias,termoBusca:this._termoBusca,onToggleCategoria:o=>this.toggleCategoria(o),linhaCtx:{valoresAtuais:this.gerenciadorValores.getValores(),valoresOriginais:this.gerenciadorValores.getValoresOriginais(),onAtualizarCampoVisual:(o,i)=>Z(this.shadow,o,i),editorCtx:{obterValorAtual:o=>this.gerenciadorValores.obterValor(o),registrarAlteracao:(o,i,a)=>{this.gerenciadorValores.registrarAlteracao(o,i,a)},focarProximoEditor:o=>Be(this.shadow,o),obterTextoMisto:()=>this.textoMisto,despacharEventoAcao:(o,i)=>{this.dispatchEvent(new CustomEvent("ui-acao-clique",{bubbles:!0,composed:!0,detail:{id:o.id,categoriaId:i,propriedade:o}}))}}}})}}$.definirCustomElement("ui-tabela-propriedades",ut);exports.GerenciadorValoresPropriedades=dt;exports.TEXTO_MISTO_PADRAO=W;exports.TabelaOrquestradorDados=_e;exports.TabelaRemotaController=me;exports.TabelaSelecaoController=fe;exports.UITabela=Ne;exports.UITabelaPropriedades=ut;exports.VALOR_MISTO=U;exports.abrirPopoverRedimensionamento=ze;exports.alternarCategoria=Fe;exports.alternarDirecaoOrdenacao=ge;exports.alternarPosicionamentoFlutuante=nt;exports.aplicarOrdenacaoTabela=xe;exports.atualizarCampoVisual=Z;exports.avaliarExpressaoMatematica=Q;exports.buscarLinhaPropriedade=ie;exports.colapsarTodasCategorias=Pe;exports.combinarValores=Nt;exports.conectarArrastoFlutuante=st;exports.conectarPainelControles=ct;exports.criarControladorSplitter=ot;exports.criarEditorAcao=Ue;exports.criarEditorBooleano=$e;exports.criarEditorCorCad=Je;exports.criarEditorCorSwatch=et;exports.criarEditorLinetype=Ye;exports.criarEditorLineweight=Ke;exports.criarEditorNumero=We;exports.criarEditorReadonly=qe;exports.criarEditorSelecao=je;exports.criarEditorTexto=Xe;exports.criarEditorValor=tt;exports.criarLinhaPropriedade=at;exports.executarOrquestracaoCorpo=Me;exports.executarOrquestracaoHeader=Le;exports.executarRedimensionamentoColuna=ke;exports.executarRedimensionamentoTeclado=Se;exports.exibirPromptPopoverRedimensionamento=Ae;exports.expandirTodasCategorias=Ie;exports.focarProximoEditor=Be;exports.formatWidth=ee;exports.getAlignmentClass=te;exports.getRowHeight=K;exports.getTextAlign=re;exports.inicializarScrollVirtualizacao=Te;exports.iniciarRedimensionamentoColuna=Ce;exports.interpretarIndice=Y;exports.isValorMisto=C;exports.limitarLarguraColuna=j;exports.localizarIndiceItem=be;exports.marcarSelectMisto=B;exports.montarEstruturaDOM=ve;exports.normalizarTexto=V;exports.orquestrarEstruturaInicial=De;exports.proximaDensidade=lt;exports.redimensionarColunaPorDelta=we;exports.registrarAtualizadorEditor=z;exports.renderizarCategoriasETree=it;exports.renderizarCorpoTabela=ye;exports.renderizarHeaderTabela=Ee;exports.renderizarSeletorTipos=rt;exports.sincronizarAtributosTabela=oe;exports.sincronizarPainelControles=L;exports.sincronizarSelect=O;exports.textoMistoDe=S;exports.tratarMudancaAtributoTabela=Re;exports.valorComum=Ve;exports.valorInicialDaPropriedade=q;exports.valoresIguais=D;