@wrrdev/fenix-ui 1.1.7 → 1.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -3
- package/dist/assets/{base-css-Be_r8aTo.js → font-CF0TXsAP.js} +39 -3
- package/dist/assets/font-CF0TXsAP.js.map +1 -0
- package/dist/components/icon/icon.js +79 -0
- package/dist/components/icon/icon.js.map +1 -0
- package/dist/components/icon/index.js +7 -0
- package/dist/components/icon/index.js.map +1 -0
- package/dist/docs/app.d.ts.map +1 -1
- package/dist/fenix-ui.umd.min.js +118 -98
- package/dist/fenix-ui3.esm.js +5 -36
- package/dist/fenix-ui3.esm.js.map +1 -1
- package/dist/fenix-ui4.esm.js +90 -20
- package/dist/fenix-ui4.esm.js.map +1 -1
- package/dist/fenix-ui5.esm.js +40 -15
- package/dist/fenix-ui5.esm.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/plugins/auto-import.d.ts +19 -2
- package/dist/plugins/auto-import.d.ts.map +1 -1
- package/dist/plugins/auto-import.js +39 -14
- package/dist/plugins/auto-import.js.map +1 -1
- package/dist/plugins/index.d.ts +5 -0
- package/dist/plugins/index.d.ts.map +1 -1
- package/dist/plugins/index.js +1 -1
- package/dist/plugins/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/assets/base-css-Be_r8aTo.js.map +0 -1
package/dist/fenix-ui.umd.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(z){typeof define=="function"&&define.amd?define(z):z()})(function(){"use strict";var
|
|
1
|
+
(function(z){typeof define=="function"&&define.amd?define(z):z()})(function(){"use strict";var Ht=z=>{throw TypeError(z)};var da=(z,k,m)=>k.has(z)||Ht("Cannot "+m);var Kt=(z,k,m)=>k.has(z)?Ht("Cannot add the same private member more than once"):k instanceof WeakSet?k.add(z):k.set(z,m);var Xt=(z,k,m)=>(da(z,k,"access private method"),m);var N,Yt;const z=new Map;function k(d){return z.set(d.name,d),d}k({name:"fenix",label:"Fenix (padrão)",tokens:{effect:{"focus-ring":"none"}}}),k({name:"seiya",label:"Seiya",tokens:{color:{primary:"#e11d48",secondary:"#fb7185",info:"#f43f5e",danger:"#be123c"},radius:{sm:"6px",md:"10px",lg:"16px"},effect:{"focus-ring":"none"}}}),k({name:"shiryu",label:"Shiryu",tokens:{color:{primary:"#0d9488",secondary:"#2dd4bf",success:"#059669",info:"#14b8a6"},radius:{sm:"4px",md:"8px",lg:"14px"},effect:{"focus-ring":"none"}}}),k({name:"hyoga",label:"Hyoga",tokens:{color:{primary:"#0284c7",secondary:"#38bdf8",info:"#06b6d4",danger:"#e11d48"},surface:{surface:"#f0f9ff","surface-hover":"#e0f2fe"},radius:{sm:"8px",md:"12px",lg:"18px"}}}),k({name:"shun",label:"Shun",tokens:{color:{primary:"#db2777",secondary:"#f472b6",info:"#ec4899",warning:"#c026d3"},radius:{sm:"10px",md:"14px",lg:"20px"}}}),k({name:"ikki",label:"Ikki",tokens:{color:{primary:"#ea580c",secondary:"#fb923c",danger:"#dc2626",warning:"#f59e0b"},radius:{sm:"2px",md:"4px",lg:"6px"}}}),k({name:"aiolia",label:"Aiolia",tokens:{color:{primary:"#b45309",secondary:"#f59e0b",warning:"#eab308",info:"#84cc16"},radius:{sm:"6px",md:"12px",lg:"20px"},effect:{"focus-ring":"none"}}});function m(d,...e){return d.reduce((t,r,a)=>t+r+(a<e.length?String(e[a]):""),"")}const Ie=class Ie extends HTMLElement{static get observedAttributes(){return[]}constructor(){super(),this.root=this.attachShadow({mode:"open"})}attributeChangedCallback(e,t,r){this.isConnected&&this.render()}connectedCallback(){this.render()}disconnectedCallback(){}hasAttr(e){return this.hasAttribute(e)}getAttr(e,t=""){var r;return(r=this.getAttribute(e))!=null?r:t}toggleAttr(e,t){t?this.setAttribute(e,""):this.removeAttribute(e)}setTemplate(e){const t=this.constructor.styles;this.root.innerHTML=`<style>${t}</style>${e}`}};Ie.styles="";let b=Ie;function v(d,e){var t;return typeof customElements!="undefined"&&!customElements.get(d)&&customElements.define(d,e),(t=customElements.get(d))!=null?t:e}const Ut={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="},Jt=/[&<>"'`=/]/g;function h(d){return d==null?"":String(d).replace(Jt,e=>Ut[e]||e)}const j="Fenix Icons",E=`
|
|
2
2
|
.fx-icon {
|
|
3
3
|
font-family: ${`var(--fx-icon-font, ${j})`};
|
|
4
4
|
font-weight: normal;
|
|
@@ -17,14 +17,14 @@
|
|
|
17
17
|
}
|
|
18
18
|
.fx-icon.fx-icon-fill { font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24; }
|
|
19
19
|
.fx-icon.fx-icon-bold { font-variation-settings: 'FILL' 0, 'wght' 600, 'GRAD' 0, 'opsz' 24; }
|
|
20
|
-
`;function
|
|
20
|
+
`;function C(d){return/^[a-z][a-z0-9_]*$/.test(d.trim())}function L(d){const e=(d!=null?d:"").trim();return e?C(e)?`<i class="fx-icon" aria-hidden="true">${e}</i>`:`<span aria-hidden="true">${h(e)}</span>`:""}const Ne=class Ne extends b{constructor(){super(...arguments),this.spawnRipple=e=>{if(this.hasAttr("disabled")||this.hasAttr("loading"))return;const t=getComputedStyle(this).getPropertyValue("--fx-effect-ripple").trim();if(t==="0"||t==="false")return;const r=this.root.querySelector(".btn");if(!r)return;const a=r.getBoundingClientRect(),o=Math.max(a.width,a.height),i=document.createElement("span");i.className="btn__ripple",i.style.width=i.style.height=`${o}px`,i.style.left=`${e.clientX-a.left-o/2}px`,i.style.top=`${e.clientY-a.top-o/2}px`,r.appendChild(i),i.addEventListener("animationend",()=>i.remove())}}static get observedAttributes(){return["variant","size","disabled","loading","type","full","icon","icon-pos"]}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}get disabled(){return this.hasAttr("disabled")}set disabled(e){this.toggleAttr("disabled",!!e)}get loading(){return this.hasAttr("loading")}set loading(e){this.toggleAttr("loading",!!e)}render(){var f;const e=this.hasAttr("loading"),t=this.hasAttr("disabled")||e,r=this.getAttr("type","button"),a=this.getAttr("icon"),o=this.getAttr("icon-pos","left")==="right",s=this.querySelector('[slot="icon"]')?'<slot name="icon"></slot>':a?L(a):"";this.setTemplate(`
|
|
21
21
|
<button class="btn" part="button" type="${r}">
|
|
22
22
|
${o?"":`<span class="btn__icon" part="icon">${s}</span>`}
|
|
23
23
|
<span class="btn__label" part="label"><slot></slot></span>
|
|
24
24
|
${o?`<span class="btn__icon" part="icon">${s}</span>`:""}
|
|
25
25
|
${e?'<span class="btn__spinner" aria-hidden="true"></span>':""}
|
|
26
26
|
</button>
|
|
27
|
-
`);const n=this.root.querySelector(".btn");if(!n)return;const l=s.trim()!=="";for(const _ of this.root.querySelectorAll(".btn__icon"))_.toggleAttribute("hidden",!l);const p=[...(f=this.childNodes)!=null?f:[]].some(_=>{var c,g;return _.nodeType===Node.ELEMENT_NODE?((c=_.getAttribute)==null?void 0:c.call(_,"slot"))!=="icon":((g=_.textContent)!=null?g:"").trim()!==""});n.classList.toggle("btn--icon-only",!p&&l),t?(n.setAttribute("disabled",""),n.setAttribute("aria-disabled","true")):(n.removeAttribute("disabled"),n.removeAttribute("aria-disabled")),e?n.setAttribute("aria-busy","true"):n.removeAttribute("aria-busy")}connectedCallback(){super.connectedCallback(),this.addEventListener("pointerdown",this.spawnRipple)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("pointerdown",this.spawnRipple)}};
|
|
27
|
+
`);const n=this.root.querySelector(".btn");if(!n)return;const l=s.trim()!=="";for(const _ of this.root.querySelectorAll(".btn__icon"))_.toggleAttribute("hidden",!l);const p=[...(f=this.childNodes)!=null?f:[]].some(_=>{var c,g;return _.nodeType===Node.ELEMENT_NODE?((c=_.getAttribute)==null?void 0:c.call(_,"slot"))!=="icon":((g=_.textContent)!=null?g:"").trim()!==""});n.classList.toggle("btn--icon-only",!p&&l),t?(n.setAttribute("disabled",""),n.setAttribute("aria-disabled","true")):(n.removeAttribute("disabled"),n.removeAttribute("aria-disabled")),e?n.setAttribute("aria-busy","true"):n.removeAttribute("aria-busy")}connectedCallback(){super.connectedCallback(),this.addEventListener("pointerdown",this.spawnRipple)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("pointerdown",this.spawnRipple)}};Ne.styles=m`
|
|
28
28
|
${E}
|
|
29
29
|
:host {
|
|
30
30
|
display: inline-block;
|
|
@@ -139,7 +139,7 @@
|
|
|
139
139
|
@media (prefers-reduced-motion: reduce) {
|
|
140
140
|
.btn__ripple { display: none; }
|
|
141
141
|
}
|
|
142
|
-
`;let F=
|
|
142
|
+
`;let F=Ne;function Wt(){return v("fx-button",F)}Wt();const je=class je extends b{static get observedAttributes(){return["variant","round"]}render(){this.setTemplate('<span class="badge" part="badge"><slot></slot></span>')}};je.styles=m`
|
|
143
143
|
:host {
|
|
144
144
|
display: inline-flex;
|
|
145
145
|
vertical-align: middle;
|
|
@@ -164,7 +164,7 @@
|
|
|
164
164
|
:host([variant='danger']) .badge { background: var(--fx-color-danger); color: #fff; border-color: transparent; }
|
|
165
165
|
:host([variant='info']) .badge { background: var(--fx-color-info); color: #fff; border-color: transparent; }
|
|
166
166
|
:host(:not([round])) .badge { border-radius: var(--fx-radius-sm); }
|
|
167
|
-
`;let P=
|
|
167
|
+
`;let P=je;function Gt(){return v("fx-badge",P)}Gt();const Fe=class Fe extends b{static get observedAttributes(){return["size"]}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}render(){this.setTemplate('<span class="spinner" part="spinner" role="status" aria-label="Carregando"></span>')}};Fe.styles=m`
|
|
168
168
|
:host {
|
|
169
169
|
display: inline-block;
|
|
170
170
|
vertical-align: middle;
|
|
@@ -185,7 +185,7 @@
|
|
|
185
185
|
@media (prefers-reduced-motion: reduce) {
|
|
186
186
|
.spinner { animation-duration: 2.5s; }
|
|
187
187
|
}
|
|
188
|
-
`;let
|
|
188
|
+
`;let R=Fe;function Zt(){return v("fx-spinner",R)}Zt();const Pe=class Pe extends b{static get observedAttributes(){return["size","disabled","placeholder","searchable","clearable","error","invalid","success","valid"]}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}get value(){return this.getAttr("value")}set value(e){this.setAttribute("value",e)}get disabled(){return this.hasAttr("disabled")}set disabled(e){this.toggleAttr("disabled",!!e)}get options(){return[...this.querySelectorAll("option")].map(e=>{var t,r,a,o,i;return{value:(a=(r=e.getAttribute("value"))!=null?r:(t=e.textContent)==null?void 0:t.trim())!=null?a:"",label:(i=(o=e.textContent)==null?void 0:o.trim())!=null?i:""}})}connectedCallback(){super.connectedCallback(),this.observer=new MutationObserver(()=>this.render()),this.observer.observe(this,{childList:!0,subtree:!0,characterData:!0}),this.docListener=e=>{this.hasAttr("open")&&(e.composedPath().includes(this)||(this.removeAttribute("open"),this.render()))},document.addEventListener("click",this.docListener)}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this.observer)==null||e.disconnect(),this.docListener&&document.removeEventListener("click",this.docListener)}select(e){this.value=e,this.removeAttribute("open"),this.render(),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:e}}))}_navigateOptions(e){var o;e.preventDefault(),this.hasAttr("open")||(this.toggleAttribute("open"),this.render());const t=Array.from(this.root.querySelectorAll(".opt"));if(!t.length)return;const r=t.indexOf(this.root.activeElement);let a=0;e.key==="ArrowDown"?a=r===-1?0:Math.min(r+1,t.length-1):e.key==="ArrowUp"?a=r===-1?t.length-1:Math.max(r-1,0):e.key==="Home"?a=0:e.key==="End"&&(a=t.length-1),(o=t[a])==null||o.focus()}render(){var c,g,u,x,y,S,A;const e=this.hasAttr("open"),t=this.root.querySelector(".search"),r=(c=t==null?void 0:t.value)!=null?c:"",a=t!=null&&this.root.activeElement===t,o=a?t.selectionStart:null,i=this.options;let s=this.getAttr("value");if(!s){const w=this.querySelector("option[selected]");s=(x=(u=w==null?void 0:w.getAttribute("value"))!=null?u:(g=w==null?void 0:w.textContent)==null?void 0:g.trim())!=null?x:""}const n=(S=(y=i.find(w=>w.value===s))==null?void 0:y.label)!=null?S:"",l=this.getAttr("placeholder","Selecione…"),p=r?i.filter(w=>w.label.toLowerCase().includes(r.toLowerCase())):i;this.setTemplate(`
|
|
189
189
|
<span class="trigger" part="trigger" role="button" tabindex="${this.disabled?-1:0}" aria-haspopup="listbox" aria-expanded="${e}">
|
|
190
190
|
<span class="${n?"label":"placeholder"}">${h(n)||h(l)}</span>
|
|
191
191
|
<span class="actions">
|
|
@@ -200,7 +200,7 @@
|
|
|
200
200
|
aria-selected="${w.value===s}">${h(w.label)}</button>`).join("")}
|
|
201
201
|
${p.length===0?`<div class="empty">${h(this.getAttr("no-results","Nenhum resultado"))}</div>`:""}
|
|
202
202
|
</div>
|
|
203
|
-
`),e&&this.setAttribute("open","");const f=this.root.querySelector(".search");if(f&&(f.value=r,f.addEventListener("input",()=>this.render()),f.addEventListener("click",w=>w.stopPropagation()),a)){f.focus();try{f.setSelectionRange(o,o)}catch(w){}}const _=this.root.querySelector(".trigger");_&&(this.disabled&&_.setAttribute("aria-disabled","true"),_.addEventListener("click",w=>{var D;this.disabled||w.target.closest(".clear")||(this.toggleAttribute("open"),this.render(),(D=this.root.querySelector(".search"))==null||D.focus())}),_.addEventListener("keydown",w=>{var D;if(!this.disabled){if(w.key==="Enter"||w.key===" "){w.preventDefault(),_.click();return}if(w.key==="Escape"){this.hasAttr("open")&&(this.removeAttribute("open"),this.render(),(D=this.root.querySelector(".trigger"))==null||D.focus());return}(w.key==="ArrowDown"||w.key==="ArrowUp"||w.key==="Home"||w.key==="End")&&this._navigateOptions(w)}}),(A=this.root.querySelector(".clear"))==null||A.addEventListener("click",w=>{w.stopPropagation(),this.value="",this.removeAttribute("open"),this.render(),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:""}}))}),this.root.querySelectorAll(".opt").forEach(w=>{w.addEventListener("click",()=>this.select(w.dataset.value))}))}};
|
|
203
|
+
`),e&&this.setAttribute("open","");const f=this.root.querySelector(".search");if(f&&(f.value=r,f.addEventListener("input",()=>this.render()),f.addEventListener("click",w=>w.stopPropagation()),a)){f.focus();try{f.setSelectionRange(o,o)}catch(w){}}const _=this.root.querySelector(".trigger");_&&(this.disabled&&_.setAttribute("aria-disabled","true"),_.addEventListener("click",w=>{var D;this.disabled||w.target.closest(".clear")||(this.toggleAttribute("open"),this.render(),(D=this.root.querySelector(".search"))==null||D.focus())}),_.addEventListener("keydown",w=>{var D;if(!this.disabled){if(w.key==="Enter"||w.key===" "){w.preventDefault(),_.click();return}if(w.key==="Escape"){this.hasAttr("open")&&(this.removeAttribute("open"),this.render(),(D=this.root.querySelector(".trigger"))==null||D.focus());return}(w.key==="ArrowDown"||w.key==="ArrowUp"||w.key==="Home"||w.key==="End")&&this._navigateOptions(w)}}),(A=this.root.querySelector(".clear"))==null||A.addEventListener("click",w=>{w.stopPropagation(),this.value="",this.removeAttribute("open"),this.render(),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:""}}))}),this.root.querySelectorAll(".opt").forEach(w=>{w.addEventListener("click",()=>this.select(w.dataset.value))}))}};Pe.styles=m`
|
|
204
204
|
:host {
|
|
205
205
|
display: inline-block;
|
|
206
206
|
vertical-align: middle;
|
|
@@ -359,7 +359,7 @@
|
|
|
359
359
|
}
|
|
360
360
|
.clear:hover { color: var(--fx-color-danger); }
|
|
361
361
|
.clear[hidden] { display: none; }
|
|
362
|
-
`;let
|
|
362
|
+
`;let V=Pe;function Qt(){return v("fx-select",V)}Qt();const Re=class Re extends b{static get observedAttributes(){return["type","size","placeholder","disabled","readonly","min","max","step","icon","icon-pos","error","invalid","success","valid"]}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}get value(){return this.getAttr("value")}set value(e){this.setAttribute("value",e)}get disabled(){return this.hasAttr("disabled")}set disabled(e){this.toggleAttr("disabled",!!e)}render(){const e=this.getAttr("type","text"),t=this.getAttr("placeholder"),r=this.hasAttr("readonly"),a=this.hasAttr("disabled"),o=this.getAttr("min"),i=this.getAttr("max"),s=this.getAttr("step"),n=this.getAttr("icon"),l=this.getAttr("icon-pos","left")==="right"?"right":"left",f=this.querySelector('[slot="icon"]')?'<slot name="icon" part="icon"></slot>':n?L(n):"",_=!!f;this.setTemplate(`
|
|
363
363
|
${this.hasAttr("clearable")?'<div class="wrap" part="wrap">':""}
|
|
364
364
|
${_?`<div class="field-icon icon-${l}">`:""}
|
|
365
365
|
${_&&l==="left"?f:""}
|
|
@@ -370,7 +370,7 @@
|
|
|
370
370
|
${_&&l==="right"?f:""}
|
|
371
371
|
${_?"</div>":""}
|
|
372
372
|
${this.hasAttr("clearable")?'<button type="button" class="clear" part="clear" aria-label="Limpar" tabindex="-1">×</button></div>':""}
|
|
373
|
-
`);const c=this.root.querySelector(".field");if(!c)return;c.value=this.getAttr("value"),a&&c.setAttribute("disabled",""),r&&c.setAttribute("readonly","");const g=y=>{this.value=c.value,this.dispatchEvent(new CustomEvent(y,{bubbles:!0,composed:!0,detail:{value:c.value}}))};c.addEventListener("input",y=>{y.stopPropagation(),g("input")}),c.addEventListener("change",y=>{y.stopPropagation(),g("change")});const u=this.root.querySelector(".clear"),
|
|
373
|
+
`);const c=this.root.querySelector(".field");if(!c)return;c.value=this.getAttr("value"),a&&c.setAttribute("disabled",""),r&&c.setAttribute("readonly","");const g=y=>{this.value=c.value,this.dispatchEvent(new CustomEvent(y,{bubbles:!0,composed:!0,detail:{value:c.value}}))};c.addEventListener("input",y=>{y.stopPropagation(),g("input")}),c.addEventListener("change",y=>{y.stopPropagation(),g("change")});const u=this.root.querySelector(".clear"),x=()=>{u==null||u.toggleAttribute("hidden",c.value==="")};x(),u==null||u.addEventListener("click",()=>{c.value="",x(),g("input"),g("change"),c.focus()}),c.addEventListener("input",x)}};Re.styles=m`
|
|
374
374
|
:host {
|
|
375
375
|
display: inline-block;
|
|
376
376
|
vertical-align: middle;
|
|
@@ -505,7 +505,7 @@
|
|
|
505
505
|
.clear[hidden] { display: none; }
|
|
506
506
|
/* Base dos glifos Fenix Icons (o @font-face vem de @wrrdev/fenix-ui/icons). */
|
|
507
507
|
${E}
|
|
508
|
-
`;let O=
|
|
508
|
+
`;let O=Re;function er(){return v("fx-input",O)}er();const Ve=class Ve extends b{static get observedAttributes(){return["checked","disabled","size"]}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}get checked(){return this.hasAttr("checked")}set checked(e){this.toggleAttr("checked",!!e)}get disabled(){return this.hasAttr("disabled")}set disabled(e){this.toggleAttr("disabled",!!e)}render(){this.setTemplate(`
|
|
509
509
|
<button class="switch" part="switch" type="button" role="switch"
|
|
510
510
|
aria-checked="${this.checked}" ${this.hasAttr("disabled")?"disabled":""}>
|
|
511
511
|
<span class="track" part="track"><span class="thumb" part="thumb"></span></span>
|
|
@@ -565,7 +565,7 @@
|
|
|
565
565
|
:host([size='lg']) .track { width: 48px; height: 26px; }
|
|
566
566
|
:host([size='lg']) .thumb { top: 4px; left: 4px; width: 18px; height: 18px; }
|
|
567
567
|
:host([size='lg'][checked]) .thumb { transform: translateX(22px); }
|
|
568
|
-
`;let B=Ve;function
|
|
568
|
+
`;let B=Ve;function tr(){return v("fx-switch",B)}tr();const Oe=class Oe extends b{constructor(){super(...arguments),this.selected=new Set}static get observedAttributes(){return["disabled","placeholder","error","invalid","success","valid"]}get values(){const e=this.getAttr("values");return e?e.split(",").map(t=>t.trim()).filter(Boolean):[]}set values(e){this.setAttribute("values",e.join(","))}get disabled(){return this.hasAttr("disabled")}set disabled(e){this.toggleAttr("disabled",!!e)}get options(){return[...this.querySelectorAll("option")].map(e=>{var t,r,a,o,i;return{value:(a=(r=e.getAttribute("value"))!=null?r:(t=e.textContent)==null?void 0:t.trim())!=null?a:"",label:(i=(o=e.textContent)==null?void 0:o.trim())!=null?i:""}})}connectedCallback(){this.selected=new Set(this.values),super.connectedCallback(),this.observer=new MutationObserver(()=>this.render()),this.observer.observe(this,{childList:!0,subtree:!0,characterData:!0}),this.docListener=e=>{this.hasAttr("open")&&(e.composedPath().includes(this)||(this.removeAttribute("open"),this.render()))},document.addEventListener("click",this.docListener)}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this.observer)==null||e.disconnect(),this.docListener&&document.removeEventListener("click",this.docListener)}commit(){this.values=[...this.selected],this.render(),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{values:[...this.selected]}}))}toggleValue(e){this.selected.has(e)?this.selected.delete(e):this.selected.add(e),this.commit()}_navigateOptions(e){var o;e.preventDefault(),this.hasAttr("open")||(this.toggleAttribute("open"),this.render());const t=Array.from(this.root.querySelectorAll(".opt"));if(!t.length)return;const r=t.indexOf(this.root.activeElement);let a=0;e.key==="ArrowDown"?a=r===-1?0:Math.min(r+1,t.length-1):e.key==="ArrowUp"?a=r===-1?t.length-1:Math.max(r-1,0):e.key==="Home"?a=0:e.key==="End"&&(a=t.length-1),(o=t[a])==null||o.focus()}render(){var l,p,f,_;const e=this.hasAttr("open"),t=(p=(l=this.root.querySelector(".search"))==null?void 0:l.value)!=null?p:"",r=this.options;for(const c of[...this.selected])r.some(g=>g.value===c)||this.selected.delete(c);const a=r.filter(c=>this.selected.has(c.value)),o=this.getAttr("placeholder","Selecione…"),i=t?r.filter(c=>c.label.toLowerCase().includes(t.toLowerCase())):r;this.setTemplate(`
|
|
569
569
|
<span class="trigger" part="trigger" role="button" tabindex="${this.disabled?-1:0}" aria-haspopup="listbox" aria-expanded="${e}" aria-disabled="${this.disabled}">
|
|
570
570
|
<span class="lead">
|
|
571
571
|
${a.length?a.map(c=>`
|
|
@@ -594,7 +594,7 @@
|
|
|
594
594
|
${i.length===0?`<li class="empty">${h(this.getAttr("no-results","Nenhum resultado"))}</li>`:""}
|
|
595
595
|
</ul>
|
|
596
596
|
</div>
|
|
597
|
-
`),e&&this.setAttribute("open","");const s=this.root.querySelector(".search");s&&(s.value=t,s.addEventListener("input",()=>{var u;const c=(u=s.selectionStart)!=null?u:s.value.length;this.render();const g=this.root.querySelector(".search");g&&(g.focus(),g.setSelectionRange(c,c))}),s.addEventListener("click",c=>c.stopPropagation()));const n=this.root.querySelector(".trigger");n&&(n.addEventListener("click",c=>{if(!this.disabled&&!c.target.closest(".clear")&&!c.target.closest(".chip__x")){if(this.toggleAttribute("open"),this.hasAttr("open")){const g=this.getBoundingClientRect();this.toggleAttribute("up",g.bottom+300>window.innerHeight&&g.top>300)}else this.removeAttribute("up");this.render()}}),n.addEventListener("keydown",c=>{var g;if(!this.disabled){if(c.key==="Enter"||c.key===" "){c.preventDefault(),n.dispatchEvent(new MouseEvent("click",{bubbles:!0}));return}if(c.key==="Escape"){this.hasAttr("open")&&(this.removeAttribute("open"),this.render(),(g=this.root.querySelector(".trigger"))==null||g.focus());return}(c.key==="ArrowDown"||c.key==="ArrowUp"||c.key==="Home"||c.key==="End")&&this._navigateOptions(c)}}),(f=this.root.querySelector(".clear"))==null||f.addEventListener("click",c=>{c.stopPropagation(),this.selected.clear(),this.commit()}),(_=this.root.querySelector(".clear-all"))==null||_.addEventListener("click",c=>{c.stopPropagation(),this.selected.clear(),this.commit()}),this.root.querySelectorAll(".chip").forEach(c=>{var g;(g=c.querySelector(".chip__x"))==null||g.addEventListener("click",u=>{u.stopPropagation(),this.toggleValue(c.dataset.value)})}),this.root.querySelectorAll(".opt").forEach(c=>{c.addEventListener("click",()=>this.toggleValue(c.dataset.value))}))}};
|
|
597
|
+
`),e&&this.setAttribute("open","");const s=this.root.querySelector(".search");s&&(s.value=t,s.addEventListener("input",()=>{var u;const c=(u=s.selectionStart)!=null?u:s.value.length;this.render();const g=this.root.querySelector(".search");g&&(g.focus(),g.setSelectionRange(c,c))}),s.addEventListener("click",c=>c.stopPropagation()));const n=this.root.querySelector(".trigger");n&&(n.addEventListener("click",c=>{if(!this.disabled&&!c.target.closest(".clear")&&!c.target.closest(".chip__x")){if(this.toggleAttribute("open"),this.hasAttr("open")){const g=this.getBoundingClientRect();this.toggleAttribute("up",g.bottom+300>window.innerHeight&&g.top>300)}else this.removeAttribute("up");this.render()}}),n.addEventListener("keydown",c=>{var g;if(!this.disabled){if(c.key==="Enter"||c.key===" "){c.preventDefault(),n.dispatchEvent(new MouseEvent("click",{bubbles:!0}));return}if(c.key==="Escape"){this.hasAttr("open")&&(this.removeAttribute("open"),this.render(),(g=this.root.querySelector(".trigger"))==null||g.focus());return}(c.key==="ArrowDown"||c.key==="ArrowUp"||c.key==="Home"||c.key==="End")&&this._navigateOptions(c)}}),(f=this.root.querySelector(".clear"))==null||f.addEventListener("click",c=>{c.stopPropagation(),this.selected.clear(),this.commit()}),(_=this.root.querySelector(".clear-all"))==null||_.addEventListener("click",c=>{c.stopPropagation(),this.selected.clear(),this.commit()}),this.root.querySelectorAll(".chip").forEach(c=>{var g;(g=c.querySelector(".chip__x"))==null||g.addEventListener("click",u=>{u.stopPropagation(),this.toggleValue(c.dataset.value)})}),this.root.querySelectorAll(".opt").forEach(c=>{c.addEventListener("click",()=>this.toggleValue(c.dataset.value))}))}};Oe.styles=m`
|
|
598
598
|
:host {
|
|
599
599
|
display: inline-block;
|
|
600
600
|
vertical-align: middle;
|
|
@@ -823,14 +823,14 @@
|
|
|
823
823
|
.opt[aria-selected='true'] .box::after { content: '✓'; }
|
|
824
824
|
.empty { padding: var(--fx-space-md); color: var(--fx-text-muted); text-align: center; }
|
|
825
825
|
:host([disabled]) .trigger { opacity: 0.55; cursor: not-allowed; background: var(--fx-surface-surface-hover); }
|
|
826
|
-
`;let H=
|
|
826
|
+
`;let H=Oe;function rr(){return v("fx-multiselect",H)}rr();const $=(d,e,t)=>d*1e4+e*100+t;function T(d){const e=/^(\d{4})(?:-(\d{2}))?(?:-(\d{2}))?$/.exec(d.trim());if(!e)return null;const t=+e[1],r=e[2]?+e[2]:1,a=e[3]?+e[3]:null;return a!==null?{lo:$(t,r,a),hi:$(t,r,a)}:e[2]?{lo:$(t,r,1),hi:$(t,r,31)}:{lo:$(t,1,1),hi:$(t,12,31)}}const Be=class Be extends b{constructor(){super(...arguments),this.view="days",this.cursor={y:new Date().getFullYear(),m:new Date().getMonth()},this.pickStart=null,this.pickEnd=null}static get observedAttributes(){return["value","start","end","min","max","range","mode","values","locale","disabled"]}get mode(){const e=this.getAttr("mode");return e==="range"||e==="multiple"?e:this.hasAttr("range")?"range":"single"}set mode(e){this.setAttribute("mode",e)}get range(){return this.mode==="range"}set range(e){this.toggleAttr("range",!!e)}get values(){const e=this.getAttr("values");return e?e.split(",").map(t=>t.trim()).filter(Boolean):[]}set values(e){this.setAttribute("values",e.join(","))}get value(){return this.getAttr("value")}set value(e){this.setAttribute("value",e)}bounds(){return{min:T(this.getAttr("min","")),max:T(this.getAttr("max",""))}}locale(){return this.getAttr("locale","pt-BR")}fmt(e,t){try{return new Intl.DateTimeFormat(this.locale(),e).format(t)}catch(r){return new Intl.DateTimeFormat("pt-BR",e).format(t)}}dayDisabled(e,t,r){const{min:a,max:o}=this.bounds(),i=$(e,t+1,r);return a!==null&&i<a.lo||o!==null&&i>o.hi}monthDisabled(e,t){const{min:r,max:a}=this.bounds(),o=$(e,t,1),i=$(e,t,31);return r!==null&&i<r.lo||a!==null&&o>a.hi}yearDisabled(e){const{min:t,max:r}=this.bounds(),a=$(e,1,1),o=$(e,12,31);return t!==null&&o<t.lo||r!==null&&a>r.hi}dayKeyOf(e){return $(e.getFullYear(),e.getMonth()+1,e.getDate())}keyToDate(e){return new Date(Math.floor(e/1e4),Math.floor(e/100)%100-1,e%100)}iso(e){const t=this.keyToDate(e),r=a=>String(a).padStart(2,"0");return`${t.getFullYear()}-${r(t.getMonth()+1)}-${r(t.getDate())}`}selection(){const e=new Set(this.values.map(r=>{var a,o;return(o=(a=T(r))==null?void 0:a.lo)!=null?o:0}).filter(Boolean));if(this.mode==="range"){let r=this.pickStart,a=this.pickEnd;const o=T(this.getAttr("start","")),i=T(this.getAttr("end",""));return r===null&&o&&(r=o.lo),a===null&&i&&(a=i.lo),{start:r,end:a,single:null,multi:e}}if(this.mode==="multiple")return{start:null,end:null,single:null,multi:e};const t=T(this.getAttr("value",""));return{start:null,end:null,single:t?t.lo:null,multi:e}}emit(){if(this.mode==="range"){const e={start:this.pickStart!==null?this.iso(this.pickStart):this.getAttr("start",""),end:this.pickEnd!==null?this.iso(this.pickEnd):this.getAttr("end","")};this.setAttribute("start",e.start),this.setAttribute("end",e.end),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:e}))}else if(this.mode==="multiple"){const e=this.values;this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{values:e}}))}else{const e=this.getAttr("value");this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:e}}))}}pickDay(e){if(this.mode==="range"){if(this.pickStart===null||this.pickEnd!==null){this.pickStart=e,this.pickEnd=null,this.setAttribute("start",this.iso(e)),this.removeAttribute("end"),this.render();return}e<this.pickStart?[this.pickStart,this.pickEnd]=[e,this.pickStart]:this.pickEnd=e,this.emit()}else if(this.mode==="multiple"){const t=new Set(this.values),r=this.iso(e);t.has(r)?t.delete(r):t.add(r),this.values=[...t].sort(),this.emit()}else this.value=this.iso(e),this.emit();this.render()}navigate(e){if(this.view==="days"){const t=new Date(this.cursor.y,this.cursor.m+e,1);this.cursor={y:t.getFullYear(),m:t.getMonth()}}else this.view==="months"?this.cursor.y+=e:this.cursor.y+=e*12;this.render()}render(){const e=this.dayKeyOf(new Date),t=this.selection(),r=this.locale(),a={days:this.fmt({month:"long",year:"numeric"},new Date(this.cursor.y,this.cursor.m,1)),months:String(this.cursor.y),years:`${Math.floor(this.cursor.y/12)*12} – ${Math.floor(this.cursor.y/12)*12+11}`};let o="";if(this.view==="days")o=[...Array(7)].map((l,p)=>this.fmt({weekday:"short"},new Date(2024,8,1+p))).map(l=>`<span class="wd">${l}</span>`).join("")+this.daysHtml(e,t,r);else if(this.view==="months")o=[...Array(12)].map((n,l)=>{const p=this.monthDisabled(this.cursor.y,l+1);return`<button type="button" class="cell" data-month="${l}" ${p?"disabled":""}>${this.fmt({month:"short"},new Date(this.cursor.y,l,1))}</button>`}).join("");else{const n=Math.floor(this.cursor.y/12)*12;o=[...Array(12)].map((l,p)=>{const f=n+p,_=this.yearDisabled(f);return`<button type="button" class="cell" data-year="${f}" ${_?"disabled":""}>${f}</button>`}).join("")}const i=this.view==="days"?'data-goto="months"':this.view==="months"?'data-goto="years"':"";this.setTemplate(`
|
|
827
827
|
<div class="head">
|
|
828
828
|
<button type="button" class="nav" data-nav="-1" aria-label="Anterior">‹</button>
|
|
829
829
|
<button type="button" class="title" part="title" ${i}>${a[this.view]}</button>
|
|
830
830
|
<button type="button" class="nav" data-nav="1" aria-label="Próximo">›</button>
|
|
831
831
|
</div>
|
|
832
832
|
<div class="grid ${this.view}">${o}</div>
|
|
833
|
-
`),this.root.querySelectorAll("[data-nav]").forEach(n=>n.addEventListener("click",()=>this.navigate(Number(n.dataset.nav))));const s=this.root.querySelector("[data-goto]");s==null||s.addEventListener("click",()=>{this.view=s.dataset.goto,this.render()}),this.root.querySelectorAll("[data-day]").forEach(n=>n.addEventListener("click",()=>this.pickDay(Number(n.dataset.day)))),this.root.querySelectorAll("[data-month]").forEach(n=>n.addEventListener("click",()=>{this.cursor.m=Number(n.dataset.month),this.view="days",this.render()})),this.root.querySelectorAll("[data-year]").forEach(n=>n.addEventListener("click",()=>{this.cursor.y=Number(n.dataset.year),this.view="months",this.render()}))}daysHtml(e,t,r){const{y:a,m:o}=this.cursor,i=new Date(a,o,1).getDay(),s=new Date(a,o+1,0).getDate(),n=new Date(a,o,0).getDate();let l="";for(let p=i-1;p>=0;p--)l+=`<span class="cell muted">${n-p}</span>`;for(let p=1;p<=s;p++){const f=$(a,o+1,p),_=t.single===f||t.start===f||t.end===f||t.multi.has(f),c=t.start!==null&&t.end!==null&&f>t.start&&f<t.end,g=["cell",_?"sel":"",c?"in-range":"",f===e?"today":""].filter(Boolean).join(" ");l+=`<button type="button" class="${g}" data-day="${f}" ${this.dayDisabled(a,o,p)?"disabled":""}>${p}</button>`}return l}};
|
|
833
|
+
`),this.root.querySelectorAll("[data-nav]").forEach(n=>n.addEventListener("click",()=>this.navigate(Number(n.dataset.nav))));const s=this.root.querySelector("[data-goto]");s==null||s.addEventListener("click",()=>{this.view=s.dataset.goto,this.render()}),this.root.querySelectorAll("[data-day]").forEach(n=>n.addEventListener("click",()=>this.pickDay(Number(n.dataset.day)))),this.root.querySelectorAll("[data-month]").forEach(n=>n.addEventListener("click",()=>{this.cursor.m=Number(n.dataset.month),this.view="days",this.render()})),this.root.querySelectorAll("[data-year]").forEach(n=>n.addEventListener("click",()=>{this.cursor.y=Number(n.dataset.year),this.view="months",this.render()}))}daysHtml(e,t,r){const{y:a,m:o}=this.cursor,i=new Date(a,o,1).getDay(),s=new Date(a,o+1,0).getDate(),n=new Date(a,o,0).getDate();let l="";for(let p=i-1;p>=0;p--)l+=`<span class="cell muted">${n-p}</span>`;for(let p=1;p<=s;p++){const f=$(a,o+1,p),_=t.single===f||t.start===f||t.end===f||t.multi.has(f),c=t.start!==null&&t.end!==null&&f>t.start&&f<t.end,g=["cell",_?"sel":"",c?"in-range":"",f===e?"today":""].filter(Boolean).join(" ");l+=`<button type="button" class="${g}" data-day="${f}" ${this.dayDisabled(a,o,p)?"disabled":""}>${p}</button>`}return l}};Be.styles=m`
|
|
834
834
|
:host {
|
|
835
835
|
display: inline-block;
|
|
836
836
|
font-family: var(--fx-font-family);
|
|
@@ -960,7 +960,7 @@
|
|
|
960
960
|
cursor: not-allowed;
|
|
961
961
|
pointer-events: none;
|
|
962
962
|
}
|
|
963
|
-
`;let K=
|
|
963
|
+
`;let K=Be;function ar(){return v("fx-calendar",K)}ar();const He=class He extends b{constructor(){super(...arguments),this.time={h:0,m:0,s:0}}static get observedAttributes(){return["value","start","end","values","mode","min","max","placeholder","disabled","format","show-time","free-text","error","invalid","success","valid"]}get mode(){const e=this.getAttr("mode","single");return["single","range","multiple"].includes(e)?e:"single"}set mode(e){this.setAttribute("mode",e)}get value(){return this.getAttr("value")}set value(e){this.setAttribute("value",e)}get values(){const e=this.getAttr("values");return e?e.split(",").map(t=>t.trim()).filter(Boolean):[]}set values(e){this.setAttribute("values",e.join(","))}get disabled(){return this.hasAttr("disabled")}set disabled(e){this.toggleAttr("disabled",!!e)}connectedCallback(){super.connectedCallback(),this.docListener=e=>{this.hasAttr("open")&&(e.composedPath().includes(this)||this.removeAttribute("open"))},document.addEventListener("click",this.docListener)}disconnectedCallback(){super.disconnectedCallback(),this.docListener&&document.removeEventListener("click",this.docListener)}formatDate(e){if(!e)return"";const t=this.getAttr("format");if(!t)return e.split("T")[0];const[r,a]=e.split("T"),[o="",i="",s=""]=r.split("-"),[n="00",l="00",p="00"]=(a!=null?a:"").split(":");return t.replace(/yyyy/gi,"").replace(/MM/g,"").replace(/mm/g,"").replace(/dd/gi,"").replace(/HH/g,"").replace(/SS/gi,"").replace(/\u0001/g,o).replace(/\u0002/g,i).replace(/\u0003/g,s).replace(/\u0004/g,n).replace(/\u0005/g,l).replace(/\u0006/g,p)}displayText(){if(this.mode==="range"){const t=this.getAttr("start"),r=this.getAttr("end");if(this.hasAttr("show-time"),!t&&!r)return"";if(this.hasAttr("show-time")){const a=o=>o?`${this.formatDate(o)} ${this.timeText()}`:o?`${this.formatDate(o)} …`:"";return t&&r?`${a(t)} → ${a(r)}`:a(t)}return t&&r?`${this.formatDate(t)} → ${this.formatDate(r)}`:t?`${this.formatDate(t)} → …`:""}if(this.mode==="multiple")return this.values.map(t=>this.formatDate(t)).join(", ");const e=this.formatDate(this.value);return e&&this.hasAttr("show-time")?`${e} ${this.timeText()}`:e}timeText(){const e=t=>String(t).padStart(2,"0");return`${e(this.time.h)}:${e(this.time.m)}:${e(this.time.s)}`}loadTimeFromValue(){const t=(this.value||this.getAttr("start")||"").split("T")[1];if(!t)return;const[r,a,o]=t.split(":").map(i=>parseInt(i,10));this.time={h:r||0,m:a||0,s:o||0}}withTime(e){return e&&(this.hasAttr("show-time")?`${e}T${this.timeText()}`:e)}render(){var p,f;const e=this.disabled,t=this.hasAttr("clearable"),r=this.displayText(),a=r.length>0,o=this.hasAttr("show-time");this.loadTimeFromValue();let i=`min="${h(this.getAttr("min"))}" max="${h(this.getAttr("max"))}"`;if(this.mode==="range")i+=` range start="${h(this.getAttr("start"))}" end="${h(this.getAttr("end"))}"`;else if(this.mode==="multiple"){const _=this.values.map(c=>c.split("T")[0]).join(",");i+=` mode="multiple" values="${h(_)}"`}else{const _=(p=this.value.split("T")[0])!=null?p:"";i+=` value="${h(_)}"`}this.setTemplate(`
|
|
964
964
|
<div class="field" part="field">
|
|
965
965
|
<input class="display" part="display" type="text" ${this.hasAttr("free-text")&&!e?"":"readonly"}
|
|
966
966
|
placeholder="${h(this.getAttr("placeholder","dd/mm/aaaa"))}"
|
|
@@ -985,7 +985,7 @@
|
|
|
985
985
|
<input class="t-s" type="number" min="0" max="59" value="${this.time.s}" aria-label="Segundo">
|
|
986
986
|
</div>`:""}
|
|
987
987
|
</div>
|
|
988
|
-
`);const s=this.root.querySelector(".field");if(!s||e)return;s.addEventListener("click",_=>{if(!_.target.closest(".clear")&&!(this.hasAttr("free-text")&&_.target.classList.contains("display")))if(this.toggleAttribute("open"),this.hasAttr("open")){const c=this.getBoundingClientRect();this.toggleAttribute("up",c.bottom+340>window.innerHeight&&c.top>340)}else this.removeAttribute("up")}),(f=this.root.querySelector(".clear"))==null||f.addEventListener("click",_=>{_.stopPropagation(),this.removeAttribute("value"),this.removeAttribute("start"),this.removeAttribute("end"),this.removeAttribute("values"),this.removeAttribute("open"),this.render(),this.emitChange({})});const n=this.root.querySelector(".pop fx-calendar");n==null||n.addEventListener("change",_=>{var g;const c=(g=_.detail)!=null?g:{};(c.start!==void 0||c.end!==void 0)&&(c.start?this.setAttribute("start",this.withTime(c.start)):this.removeAttribute("start"),c.end?this.setAttribute("end",this.withTime(c.end)):this.removeAttribute("end")),c.values!==void 0&&(this.values=c.values.map(u=>this.withTime(u))),c.value!==void 0&&(c.value?this.setAttribute("value",this.withTime(c.value)):this.removeAttribute("value"),this.mode==="single"&&this.removeAttribute("open")),this.render(),this.emitChange(c)});const l=this.root.querySelector(".display");if(l&&this.hasAttr("free-text")&&!e&&(l.addEventListener("keydown",_=>{_.key==="Enter"&&(_.preventDefault(),this.commitTyped(l))}),l.addEventListener("blur",()=>this.commitTyped(l))),o){const _=()=>{const c=this.root.querySelector(".t-h"),g=this.root.querySelector(".t-m"),u=this.root.querySelector(".t-s"),
|
|
988
|
+
`);const s=this.root.querySelector(".field");if(!s||e)return;s.addEventListener("click",_=>{if(!_.target.closest(".clear")&&!(this.hasAttr("free-text")&&_.target.classList.contains("display")))if(this.toggleAttribute("open"),this.hasAttr("open")){const c=this.getBoundingClientRect();this.toggleAttribute("up",c.bottom+340>window.innerHeight&&c.top>340)}else this.removeAttribute("up")}),(f=this.root.querySelector(".clear"))==null||f.addEventListener("click",_=>{_.stopPropagation(),this.removeAttribute("value"),this.removeAttribute("start"),this.removeAttribute("end"),this.removeAttribute("values"),this.removeAttribute("open"),this.render(),this.emitChange({})});const n=this.root.querySelector(".pop fx-calendar");n==null||n.addEventListener("change",_=>{var g;const c=(g=_.detail)!=null?g:{};(c.start!==void 0||c.end!==void 0)&&(c.start?this.setAttribute("start",this.withTime(c.start)):this.removeAttribute("start"),c.end?this.setAttribute("end",this.withTime(c.end)):this.removeAttribute("end")),c.values!==void 0&&(this.values=c.values.map(u=>this.withTime(u))),c.value!==void 0&&(c.value?this.setAttribute("value",this.withTime(c.value)):this.removeAttribute("value"),this.mode==="single"&&this.removeAttribute("open")),this.render(),this.emitChange(c)});const l=this.root.querySelector(".display");if(l&&this.hasAttr("free-text")&&!e&&(l.addEventListener("keydown",_=>{_.key==="Enter"&&(_.preventDefault(),this.commitTyped(l))}),l.addEventListener("blur",()=>this.commitTyped(l))),o){const _=()=>{const c=this.root.querySelector(".t-h"),g=this.root.querySelector(".t-m"),u=this.root.querySelector(".t-s"),x=(A,w)=>Math.min(w,Math.max(0,parseInt(A!=null?A:"0",10)||0));this.time={h:x(c==null?void 0:c.value,23),m:x(g==null?void 0:g.value,59),s:x(u==null?void 0:u.value,59)};const y=A=>A.split("T")[0]?`${A.split("T")[0]}T${this.timeText()}`:A;this.value&&this.setAttribute("value",y(this.value)),this.getAttr("start")&&this.setAttribute("start",y(this.getAttr("start"))),this.getAttr("end")&&this.setAttribute("end",y(this.getAttr("end"))),this.values.length&&(this.values=this.values.map(A=>y(A)));const S=this.root.querySelector(".display");S&&(S.value=this.displayText()),this.emitChange({value:this.value})};[".t-h",".t-m",".t-s"].forEach(c=>{var g;(g=this.root.querySelector(c))==null||g.addEventListener("input",_)})}}emitChange(e){this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:e}))}parseTyped(e){var u,x;const t=e.trim();if(!t)return null;const r=this.getAttr("format","dd/mm/yyyy").toLowerCase(),a=["dd","mm","yyyy"].filter(y=>r.includes(y));if(a.length<3)return null;const o=t.split(new RegExp("[^0-9]+")).filter(Boolean);if(o.length!==3)return null;const i={};a.forEach((y,S)=>i[y]=o[S]);const s=`${i.yyyy}-${((u=i.mm)!=null?u:"").padStart(2,"0")}-${((x=i.dd)!=null?x:"").padStart(2,"0")}`,n=new Date(`${s}T12:00:00`);if(Number.isNaN(n.getTime()))return null;const[l,p,f]=s.split("-").map(y=>parseInt(y,10));if(n.getFullYear()!==l||n.getMonth()+1!==p||n.getDate()!==f)return null;const _=(y,S)=>y.split("T")[0].localeCompare(S.split("T")[0]),c=this.getAttr("min"),g=this.getAttr("max");return c&&_(s,c)<0||g&&_(s,g)>0?null:s}commitTyped(e){const t=this.parseTyped(e.value);if(!t){e.classList.add("invalid"),this.dispatchEvent(new CustomEvent("invalid",{bubbles:!0,composed:!0,detail:{text:e.value}})),e.value=this.displayText(),setTimeout(()=>e.classList.remove("invalid"),1500);return}if(this.mode==="single")this.setAttribute("value",this.withTime(t)),this.emitChange({value:this.value});else if(this.mode==="range"){if(!this.getAttr("start")||this.getAttr("start")&&this.getAttr("end"))this.setAttribute("start",this.withTime(t)),this.removeAttribute("end");else{const[r,a]=[this.getAttr("start").split("T")[0],t].sort();this.setAttribute("start",this.withTime(r)),this.setAttribute("end",this.withTime(a))}this.emitChange({start:this.getAttr("start"),end:this.getAttr("end")})}else{const r=this.values.filter(a=>a.split("T")[0]!==t);r.push(this.withTime(t)),this.values=r,this.emitChange({values:this.values})}this.render()}};He.styles=m`
|
|
989
989
|
:host {
|
|
990
990
|
display: inline-block;
|
|
991
991
|
vertical-align: middle;
|
|
@@ -1137,7 +1137,7 @@
|
|
|
1137
1137
|
:host([disabled]) .display { cursor: not-allowed; }
|
|
1138
1138
|
:host([free-text]) .display { cursor: text; }
|
|
1139
1139
|
:host([free-text]) .display.invalid { border-bottom: 2px solid var(--fx-color-danger); }
|
|
1140
|
-
`;let X=
|
|
1140
|
+
`;let X=He;function or(){return v("fx-datepicker",X)}or();const Ke=class Ke extends b{static get observedAttributes(){return["checked","disabled","indeterminate"]}get checked(){return this.hasAttr("checked")}set checked(e){this.toggleAttr("checked",!!e)}get indeterminate(){return this.hasAttr("indeterminate")}set indeterminate(e){this.toggleAttr("indeterminate",!!e)}get disabled(){return this.hasAttr("disabled")}set disabled(e){this.toggleAttr("disabled",!!e)}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}render(){const e=this.size==="sm"?"14px":this.size==="lg"?"22px":"18px";this.style.getPropertyValue("--fx-size-checkbox")||this.style.setProperty("--fx-size-checkbox",e),this.setTemplate(`
|
|
1141
1141
|
<span class="box" part="box" role="checkbox" tabindex="0"
|
|
1142
1142
|
aria-checked="${this.indeterminate?"mixed":this.checked}"
|
|
1143
1143
|
aria-disabled="${this.disabled}">
|
|
@@ -1146,7 +1146,7 @@
|
|
|
1146
1146
|
</span>
|
|
1147
1147
|
<span class="label" part="label"><slot></slot></span>
|
|
1148
1148
|
</span>
|
|
1149
|
-
`);const t=this.root.querySelector(".box");t&&(t.addEventListener("click",()=>this.toggle()),t.addEventListener("keydown",r=>{(r.key===" "||r.key==="Enter")&&(r.preventDefault(),this.toggle())}))}toggle(){this.disabled||(this.indeterminate=!1,this.checked=!this.checked,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{checked:this.checked,value:this.getAttr("value")}})))}};
|
|
1149
|
+
`);const t=this.root.querySelector(".box");t&&(t.addEventListener("click",()=>this.toggle()),t.addEventListener("keydown",r=>{(r.key===" "||r.key==="Enter")&&(r.preventDefault(),this.toggle())}))}toggle(){this.disabled||(this.indeterminate=!1,this.checked=!this.checked,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{checked:this.checked,value:this.getAttr("value")}})))}};Ke.styles=m`
|
|
1150
1150
|
:host {
|
|
1151
1151
|
display: inline-flex;
|
|
1152
1152
|
vertical-align: middle;
|
|
@@ -1207,13 +1207,13 @@
|
|
|
1207
1207
|
cursor: not-allowed;
|
|
1208
1208
|
pointer-events: none;
|
|
1209
1209
|
}
|
|
1210
|
-
`;let Y=
|
|
1210
|
+
`;let Y=Ke;function ir(){return v("fx-checkbox",Y)}ir();const Xe=class Xe extends b{static get observedAttributes(){return["checked","disabled"]}get checked(){return this.hasAttr("checked")}set checked(e){this.toggleAttr("checked",!!e)}get disabled(){return this.hasAttr("disabled")}set disabled(e){this.toggleAttr("disabled",!!e)}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}render(){const e=this.size==="sm"?"14px":this.size==="lg"?"22px":"18px";this.style.getPropertyValue("--fx-size-radio")||this.style.setProperty("--fx-size-radio",e),this.setTemplate(`
|
|
1211
1211
|
<span class="box" part="box" role="radio" tabindex="0"
|
|
1212
1212
|
aria-checked="${this.checked}" aria-disabled="${this.disabled}">
|
|
1213
1213
|
<span class="control" part="control"><span class="dot" part="dot"></span></span>
|
|
1214
1214
|
<span class="label" part="label"><slot></slot></span>
|
|
1215
1215
|
</span>
|
|
1216
|
-
`);const t=this.root.querySelector(".box");t&&(t.addEventListener("click",()=>this.select()),t.addEventListener("keydown",r=>{(r.key===" "||r.key==="Enter")&&(r.preventDefault(),this.select())}))}select(){if(this.disabled||this.checked)return;const e=this.getAttr("name");e&&document.querySelectorAll(`fx-radio[name="${CSS.escape(e)}"]`).forEach(t=>{t.checked=!1}),this.checked=!0,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{checked:!0,value:this.getAttr("value")}}))}};
|
|
1216
|
+
`);const t=this.root.querySelector(".box");t&&(t.addEventListener("click",()=>this.select()),t.addEventListener("keydown",r=>{(r.key===" "||r.key==="Enter")&&(r.preventDefault(),this.select())}))}select(){if(this.disabled||this.checked)return;const e=this.getAttr("name");e&&document.querySelectorAll(`fx-radio[name="${CSS.escape(e)}"]`).forEach(t=>{t.checked=!1}),this.checked=!0,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{checked:!0,value:this.getAttr("value")}}))}};Xe.styles=m`
|
|
1217
1217
|
:host {
|
|
1218
1218
|
display: inline-flex;
|
|
1219
1219
|
vertical-align: middle;
|
|
@@ -1269,12 +1269,12 @@
|
|
|
1269
1269
|
cursor: not-allowed;
|
|
1270
1270
|
pointer-events: none;
|
|
1271
1271
|
}
|
|
1272
|
-
`;let U=Ke;function ar(){return x("fx-radio",U)}ar();const T="pt-BR",or={currency:d=>{if(d==null||d==="")return"";try{return new Intl.NumberFormat(T,{style:"currency",currency:"BRL"}).format(Number(d))}catch(e){return String(d)}},date:(d,e)=>{const t=Ct(d);if(!t)return String(d!=null?d:"");const r={short:{dateStyle:"short"},medium:{dateStyle:"medium"},long:{dateStyle:"long"},full:{dateStyle:"full"}},a=e&&r[e]?r[e]:r.medium;try{return new Intl.DateTimeFormat(T,a).format(t)}catch(o){return t.toLocaleDateString(T)}},dateTime:d=>{const e=Ct(d);if(!e)return String(d!=null?d:"");try{return new Intl.DateTimeFormat(T,{dateStyle:"medium",timeStyle:"short"}).format(e)}catch(t){return e.toLocaleString(T)}},number:(d,e)=>{if(d==null||d==="")return"";try{const t={};if(e!==void 0){const r=Number(e);t.minimumFractionDigits=r,t.maximumFractionDigits=r}return new Intl.NumberFormat(T,t).format(Number(d))}catch(t){return String(d)}}};function Ct(d){if(d==null||d==="")return null;if(d instanceof Date)return isNaN(d.getTime())?null:d;if(typeof d=="number"){const e=new Date(d);return isNaN(e.getTime())?null:e}if(typeof d=="string"){const e=new Date(d);return isNaN(e.getTime())?null:e}return null}const ir=d=>/[a-z_$]/i.test(d),sr=d=>/[a-z0-9_$]/i.test(d);function nr(d){const e=[];let t=0;for(;t<d.length;){const r=d[t];if(/\s/.test(r)){t++;continue}if(r==="'"||r==='"'){const o=r;let i="";for(t++;t<d.length&&d[t]!==o;)d[t]==="\\"&&t+1<d.length?(i+=d[t+1],t+=2):(i+=d[t],t++);t++,e.push({type:"str",value:i});continue}if(r>="0"&&r<="9"){let o="";for(;t<d.length&&(d[t]>="0"&&d[t]<="9"||d[t]===".");)o+=d[t],t++;e.push({type:"num",value:o});continue}if(ir(r)){let o="";for(;t<d.length&&sr(d[t]);)o+=d[t],t++;o==="true"||o==="false"||o==="null"?e.push({type:"kw",value:o}):e.push({type:"id",value:o});continue}const a=d.slice(t,t+2);if(a==="=="||a==="!="||a===">="||a==="<="){e.push({type:"cmp",value:a}),t+=2;continue}if(r==="+"){e.push({type:"op",value:"+"}),t++;continue}if(r==="-"){e.push({type:"op",value:"-"}),t++;continue}if(r==="*"){e.push({type:"op",value:"*"}),t++;continue}if(r==="/"){e.push({type:"op",value:"/"}),t++;continue}if(r===">"){e.push({type:"cmp",value:">"}),t++;continue}if(r==="<"){e.push({type:"cmp",value:"<"}),t++;continue}if(r==="!"){e.push({type:"op",value:"!"}),t++;continue}if(r==="?"){e.push({type:"qm",value:"?"}),t++;continue}if(r===":"){e.push({type:"colon",value:":"}),t++;continue}if(r==="|"){e.push({type:"pipe",value:"|"}),t++;continue}if(r==="("){e.push({type:"lparen",value:"("}),t++;continue}if(r===")"){e.push({type:"rparen",value:")"}),t++;continue}if(r==="."){e.push({type:"dot",value:"."}),t++;continue}t++}return e}class lr{constructor(e,t){this.tokens=e,this.ctx=t,this.pos=0}peek(){return this.pos<this.tokens.length?this.tokens[this.pos]:null}next(){return this.pos<this.tokens.length?this.tokens[this.pos++]:null}matchType(e){var t;return((t=this.peek())==null?void 0:t.type)===e?this.next():null}parse(){return this.parsePipe()}parsePipe(){var t,r;let e=this.parseTernary();for(;((t=this.peek())==null?void 0:t.type)==="pipe";){this.next();const a=this.matchType("id");if(!a)break;let o;if(((r=this.peek())==null?void 0:r.type)==="colon"){this.next();const i=this.peek();i&&(i.type==="str"||i.type==="num"||i.type==="id")&&(o=i.type==="str"?i.value:String(i.value),this.next())}e=this.applyPipe(a.value,o,e)}return e}parseTernary(){var t,r;const e=this.parseComparison();if(((t=this.peek())==null?void 0:t.type)==="qm"){this.next();const a=this.parsePipe();if(((r=this.peek())==null?void 0:r.type)==="colon"){this.next();const o=this.parsePipe();return e?a:o}return a}return e}parseComparison(){const e=this.parseAdditive(),t=this.peek();if((t==null?void 0:t.type)==="cmp"){this.next();const r=this.parseAdditive();return this.compare(e,t.value,r)}return e}compare(e,t,r){const a=Lt(e),o=Lt(r);switch(t){case"==":return a==o;case"!=":return a!=o;case">":return a>o;case"<":return a<o;case">=":return a>=o;case"<=":return a<=o}return!1}parseAdditive(){let e=this.parseMultiplicative();for(;;){const t=this.peek();if((t==null?void 0:t.type)==="op"&&(t.value==="+"||t.value==="-")){this.next();const r=this.parseMultiplicative();e=t.value==="+"?this.add(e,r):this.subtract(e,r)}else break}return e}add(e,t){return typeof e=="string"||typeof t=="string"?String(e!=null?e:"")+String(t!=null?t:""):Number(e)+Number(t)}subtract(e,t){return Number(e)-Number(t)}parseMultiplicative(){let e=this.parseUnary();for(;;){const t=this.peek();if((t==null?void 0:t.type)==="op"&&(t.value==="*"||t.value==="/")){this.next();const r=this.parseUnary();e=t.value==="*"?Number(e)*Number(r):Number(e)/Number(r)}else break}return e}parseUnary(){const e=this.peek();if((e==null?void 0:e.type)==="op"&&(e.value==="+"||e.value==="-")){this.next();const t=Number(this.parseUnary());return e.value==="-"?-t:t}return(e==null?void 0:e.type)==="op"&&e.value==="!"?(this.next(),!this.parseUnary()):this.parsePrimary()}parsePrimary(){var t;const e=this.peek();if(e){if(e.type==="lparen"){this.next();const r=this.parsePipe();return this.matchType("rparen"),r}if(e.type==="str")return this.next(),e.value;if(e.type==="num")return this.next(),Number(e.value);if(e.type==="kw")return this.next(),e.value==="true"?!0:e.value==="false"?!1:null;if(e.type==="id"){this.next();let r=this.resolveId(e.value);for(;((t=this.peek())==null?void 0:t.type)==="dot";){this.next();const a=this.peek();if((a==null?void 0:a.type)==="id")this.next(),r=r==null?void 0:r[a.value];else break}return r}this.next()}}resolveId(e){switch(e){case"value":return this.ctx.value;case"row":return this.ctx.row;case"true":return!0;case"false":return!1;case"null":return null;default:return this.ctx.row[e]}}applyPipe(e,t,r){const a=or[e];if(!a)return J(r);try{return a(r,t)}catch(o){return J(r)}}}function Lt(d){return typeof d=="number"?d:typeof d=="boolean"?d?1:0:String(d!=null?d:"")}function J(d){return d==null?"":typeof d=="object"?"[object Object]":String(d)}function cr(d,e){try{const t=nr(d),a=new lr(t,e).parse();return J(a)}catch(t){return""}}function dr(d,e,t){const r={value:e[t],row:e};return d.replace(/\{\{([^}]+)\}\}/g,(a,o)=>h(cr(hr(o.trim()),r)))}function hr(d){return d.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,'"').replace(/'/g,"'")}const Xe=class Xe extends b{constructor(){super(...arguments),this._data=[],this.page=0,this.sortField="",this.sortDir=1,this.filters={},this.globalSearch=""}static get observedAttributes(){return["pagination","rows","rows-options","striped","empty-message","pagination-position","lazy","total","loading","loading-message"]}get data(){return this._data}set data(e){this._data=Array.isArray(e)?e:[],this.render()}get total(){var e;return(e=this._total)!=null?e:this._data.length}set total(e){this._total=e,this.setAttribute("total",String(e))}get rowsPerPage(){const e=Number(this.getAttr("rows","10"));return e>0?e:10}set rowsPerPage(e){this.setAttribute("rows",String(e))}get lazy(){return this.hasAttr("lazy")}get columns(){return[...this.querySelectorAll("fx-column")].map(e=>{var o,i,s,n;const t=e.querySelector("template"),r=t?void 0:e.innerHTML.trim(),a=(o=e.getAttribute("align"))!=null?o:"left";return{field:(i=e.getAttribute("field"))!=null?i:"",header:(n=(s=e.getAttribute("header"))!=null?s:e.getAttribute("field"))!=null?n:"",sortable:e.hasAttribute("sortable"),filterable:e.hasAttribute("filterable"),align:["left","center","right","justify","start","end"].includes(a)?a:"left",template:t!=null?t:void 0,directTemplate:r||void 0}})}get toolbarTemplate(){return this.querySelector('template[slot="toolbar"]')}connectedCallback(){this._parseDataAttribute(),super.connectedCallback(),this._columnObserver=new MutationObserver(()=>this.render()),this._columnObserver.observe(this,{childList:!0,subtree:!0})}disconnectedCallback(){var e;(e=this._columnObserver)==null||e.disconnect(),super.disconnectedCallback()}_parseDataAttribute(){if(!this._data.length)try{const t=this.getAttr("data");t&&(this._data=JSON.parse(t))}catch(t){}const e=this.getAttr("total");if(e){const t=Number(e);isNaN(t)||(this._total=t)}}computeRows(){let e=[...this._data];for(const[r,a]of Object.entries(this.filters)){if(!a)continue;const o=a.toLowerCase();e=e.filter(i=>{var s;return String((s=i[r])!=null?s:"").toLowerCase().includes(o)})}if(this.globalSearch){const r=this.globalSearch.toLowerCase(),a=this._getSearchFields();e=e.filter(o=>(a.length?a:Object.keys(o)).some(s=>{var n;return String((n=o[s])!=null?n:"").toLowerCase().includes(r)}))}const t=this.lazy?this.total:e.length;if(this.sortField&&e.sort((r,a)=>{const o=r[this.sortField],i=a[this.sortField];return typeof o=="number"&&typeof i=="number"?(o-i)*this.sortDir:String(o!=null?o:"").localeCompare(String(i!=null?i:""),"pt-BR")*this.sortDir}),this.hasAttr("pagination")&&!this.lazy){const r=this.page*this.rowsPerPage;e=e.slice(r,r+this.rowsPerPage)}return{rows:e,total:t}}_getSearchFields(){const e=this.root.querySelector("[data-search-fields]");if(!e)return[];const t=e.getAttribute("data-search-fields");return t===null?[]:t.split(",").map(r=>r.trim()).filter(Boolean)}cellHtml(e,t){var a,o,i;const r=(o=(a=e.template)==null?void 0:a.innerHTML)!=null?o:e.directTemplate;return r?dr(r,t,e.field):h(String((i=t[e.field])!=null?i:""))}render(){var g;const e=this.columns.filter(u=>u.field),{rows:t,total:r}=this.computeRows(),a=this.hasAttr("pagination"),o=Math.max(1,Math.ceil(r/this.rowsPerPage));this.page>=o&&(this.page=o-1);const i=this.toolbarTemplate,s=i?`<div class="toolbar" part="toolbar">${i.innerHTML}</div>`:"",n=e.map(u=>{const v=this.sortField===u.field,y=v?this.sortDir===1?"▲":"▼":u.sortable?"⇅":"",S=v?"active":"";return`<th part="header" class="${u.sortable?"sortable":""}" style="text-align:${u.align}" data-field="${h(u.field)}">${h(u.header)}${y?`<span class="sort-ind ${S}">${y}</span>`:""}</th>`}).join(""),l=e.some(u=>u.filterable)?`<tr class="filter-row">${e.map(u=>{var v;return`<th style="text-align:${u.align}">${u.filterable?`<input class="filter" data-field="${h(u.field)}" placeholder="${h("Filtrar…")}" value="${h((v=this.filters[u.field])!=null?v:"")}">`:""}</th>`}).join("")}</tr>`:"",p=t.length?t.map((u,v)=>`<tr part="row" data-index="${v}">${e.map(y=>`<td part="cell" style="text-align:${y.align}">${this.cellHtml(y,u)}</td>`).join("")}</tr>`).join(""):`<tr><td class="empty" colspan="${e.length||1}">${h(this.getAttr("empty-message","Nenhum registro encontrado"))}</td></tr>`,f=a?`
|
|
1272
|
+
`;let U=Xe;function sr(){return v("fx-radio",U)}sr();const q="pt-BR",nr={currency:d=>{if(d==null||d==="")return"";try{return new Intl.NumberFormat(q,{style:"currency",currency:"BRL"}).format(Number(d))}catch(e){return String(d)}},date:(d,e)=>{const t=Tt(d);if(!t)return String(d!=null?d:"");const r={short:{dateStyle:"short"},medium:{dateStyle:"medium"},long:{dateStyle:"long"},full:{dateStyle:"full"}},a=e&&r[e]?r[e]:r.medium;try{return new Intl.DateTimeFormat(q,a).format(t)}catch(o){return t.toLocaleDateString(q)}},dateTime:d=>{const e=Tt(d);if(!e)return String(d!=null?d:"");try{return new Intl.DateTimeFormat(q,{dateStyle:"medium",timeStyle:"short"}).format(e)}catch(t){return e.toLocaleString(q)}},number:(d,e)=>{if(d==null||d==="")return"";try{const t={};if(e!==void 0){const r=Number(e);t.minimumFractionDigits=r,t.maximumFractionDigits=r}return new Intl.NumberFormat(q,t).format(Number(d))}catch(t){return String(d)}}};function Tt(d){if(d==null||d==="")return null;if(d instanceof Date)return isNaN(d.getTime())?null:d;if(typeof d=="number"){const e=new Date(d);return isNaN(e.getTime())?null:e}if(typeof d=="string"){const e=new Date(d);return isNaN(e.getTime())?null:e}return null}const lr=d=>/[a-z_$]/i.test(d),cr=d=>/[a-z0-9_$]/i.test(d);function dr(d){const e=[];let t=0;for(;t<d.length;){const r=d[t];if(/\s/.test(r)){t++;continue}if(r==="'"||r==='"'){const o=r;let i="";for(t++;t<d.length&&d[t]!==o;)d[t]==="\\"&&t+1<d.length?(i+=d[t+1],t+=2):(i+=d[t],t++);t++,e.push({type:"str",value:i});continue}if(r>="0"&&r<="9"){let o="";for(;t<d.length&&(d[t]>="0"&&d[t]<="9"||d[t]===".");)o+=d[t],t++;e.push({type:"num",value:o});continue}if(lr(r)){let o="";for(;t<d.length&&cr(d[t]);)o+=d[t],t++;o==="true"||o==="false"||o==="null"?e.push({type:"kw",value:o}):e.push({type:"id",value:o});continue}const a=d.slice(t,t+2);if(a==="=="||a==="!="||a===">="||a==="<="){e.push({type:"cmp",value:a}),t+=2;continue}if(r==="+"){e.push({type:"op",value:"+"}),t++;continue}if(r==="-"){e.push({type:"op",value:"-"}),t++;continue}if(r==="*"){e.push({type:"op",value:"*"}),t++;continue}if(r==="/"){e.push({type:"op",value:"/"}),t++;continue}if(r===">"){e.push({type:"cmp",value:">"}),t++;continue}if(r==="<"){e.push({type:"cmp",value:"<"}),t++;continue}if(r==="!"){e.push({type:"op",value:"!"}),t++;continue}if(r==="?"){e.push({type:"qm",value:"?"}),t++;continue}if(r===":"){e.push({type:"colon",value:":"}),t++;continue}if(r==="|"){e.push({type:"pipe",value:"|"}),t++;continue}if(r==="("){e.push({type:"lparen",value:"("}),t++;continue}if(r===")"){e.push({type:"rparen",value:")"}),t++;continue}if(r==="."){e.push({type:"dot",value:"."}),t++;continue}t++}return e}class hr{constructor(e,t){this.tokens=e,this.ctx=t,this.pos=0}peek(){return this.pos<this.tokens.length?this.tokens[this.pos]:null}next(){return this.pos<this.tokens.length?this.tokens[this.pos++]:null}matchType(e){var t;return((t=this.peek())==null?void 0:t.type)===e?this.next():null}parse(){return this.parsePipe()}parsePipe(){var t,r;let e=this.parseTernary();for(;((t=this.peek())==null?void 0:t.type)==="pipe";){this.next();const a=this.matchType("id");if(!a)break;let o;if(((r=this.peek())==null?void 0:r.type)==="colon"){this.next();const i=this.peek();i&&(i.type==="str"||i.type==="num"||i.type==="id")&&(o=i.type==="str"?i.value:String(i.value),this.next())}e=this.applyPipe(a.value,o,e)}return e}parseTernary(){var t,r;const e=this.parseComparison();if(((t=this.peek())==null?void 0:t.type)==="qm"){this.next();const a=this.parsePipe();if(((r=this.peek())==null?void 0:r.type)==="colon"){this.next();const o=this.parsePipe();return e?a:o}return a}return e}parseComparison(){const e=this.parseAdditive(),t=this.peek();if((t==null?void 0:t.type)==="cmp"){this.next();const r=this.parseAdditive();return this.compare(e,t.value,r)}return e}compare(e,t,r){const a=qt(e),o=qt(r);switch(t){case"==":return a==o;case"!=":return a!=o;case">":return a>o;case"<":return a<o;case">=":return a>=o;case"<=":return a<=o}return!1}parseAdditive(){let e=this.parseMultiplicative();for(;;){const t=this.peek();if((t==null?void 0:t.type)==="op"&&(t.value==="+"||t.value==="-")){this.next();const r=this.parseMultiplicative();e=t.value==="+"?this.add(e,r):this.subtract(e,r)}else break}return e}add(e,t){return typeof e=="string"||typeof t=="string"?String(e!=null?e:"")+String(t!=null?t:""):Number(e)+Number(t)}subtract(e,t){return Number(e)-Number(t)}parseMultiplicative(){let e=this.parseUnary();for(;;){const t=this.peek();if((t==null?void 0:t.type)==="op"&&(t.value==="*"||t.value==="/")){this.next();const r=this.parseUnary();e=t.value==="*"?Number(e)*Number(r):Number(e)/Number(r)}else break}return e}parseUnary(){const e=this.peek();if((e==null?void 0:e.type)==="op"&&(e.value==="+"||e.value==="-")){this.next();const t=Number(this.parseUnary());return e.value==="-"?-t:t}return(e==null?void 0:e.type)==="op"&&e.value==="!"?(this.next(),!this.parseUnary()):this.parsePrimary()}parsePrimary(){var t;const e=this.peek();if(e){if(e.type==="lparen"){this.next();const r=this.parsePipe();return this.matchType("rparen"),r}if(e.type==="str")return this.next(),e.value;if(e.type==="num")return this.next(),Number(e.value);if(e.type==="kw")return this.next(),e.value==="true"?!0:e.value==="false"?!1:null;if(e.type==="id"){this.next();let r=this.resolveId(e.value);for(;((t=this.peek())==null?void 0:t.type)==="dot";){this.next();const a=this.peek();if((a==null?void 0:a.type)==="id")this.next(),r=r==null?void 0:r[a.value];else break}return r}this.next()}}resolveId(e){switch(e){case"value":return this.ctx.value;case"row":return this.ctx.row;case"true":return!0;case"false":return!1;case"null":return null;default:return this.ctx.row[e]}}applyPipe(e,t,r){const a=nr[e];if(!a)return J(r);try{return a(r,t)}catch(o){return J(r)}}}function qt(d){return typeof d=="number"?d:typeof d=="boolean"?d?1:0:String(d!=null?d:"")}function J(d){return d==null?"":typeof d=="object"?"[object Object]":String(d)}function pr(d,e){try{const t=dr(d),a=new hr(t,e).parse();return J(a)}catch(t){return""}}function ur(d,e,t){const r={value:e[t],row:e};return d.replace(/\{\{([^}]+)\}\}/g,(a,o)=>h(pr(fr(o.trim()),r)))}function fr(d){return d.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,'"').replace(/'/g,"'")}const Ye=class Ye extends b{constructor(){super(...arguments),this._data=[],this.page=0,this.sortField="",this.sortDir=1,this.filters={},this.globalSearch=""}static get observedAttributes(){return["pagination","rows","rows-options","striped","empty-message","pagination-position","lazy","total","loading","loading-message"]}get data(){return this._data}set data(e){this._data=Array.isArray(e)?e:[],this.render()}get total(){var e;return(e=this._total)!=null?e:this._data.length}set total(e){this._total=e,this.setAttribute("total",String(e))}get rowsPerPage(){const e=Number(this.getAttr("rows","10"));return e>0?e:10}set rowsPerPage(e){this.setAttribute("rows",String(e))}get lazy(){return this.hasAttr("lazy")}get columns(){return[...this.querySelectorAll("fx-column")].map(e=>{var o,i,s,n;const t=e.querySelector("template"),r=t?void 0:e.innerHTML.trim(),a=(o=e.getAttribute("align"))!=null?o:"left";return{field:(i=e.getAttribute("field"))!=null?i:"",header:(n=(s=e.getAttribute("header"))!=null?s:e.getAttribute("field"))!=null?n:"",sortable:e.hasAttribute("sortable"),filterable:e.hasAttribute("filterable"),align:["left","center","right","justify","start","end"].includes(a)?a:"left",template:t!=null?t:void 0,directTemplate:r||void 0}})}get toolbarTemplate(){return this.querySelector('template[slot="toolbar"]')}connectedCallback(){this._parseDataAttribute(),super.connectedCallback(),this._columnObserver=new MutationObserver(()=>this.render()),this._columnObserver.observe(this,{childList:!0,subtree:!0})}disconnectedCallback(){var e;(e=this._columnObserver)==null||e.disconnect(),super.disconnectedCallback()}_parseDataAttribute(){if(!this._data.length)try{const t=this.getAttr("data");t&&(this._data=JSON.parse(t))}catch(t){}const e=this.getAttr("total");if(e){const t=Number(e);isNaN(t)||(this._total=t)}}computeRows(){let e=[...this._data];for(const[r,a]of Object.entries(this.filters)){if(!a)continue;const o=a.toLowerCase();e=e.filter(i=>{var s;return String((s=i[r])!=null?s:"").toLowerCase().includes(o)})}if(this.globalSearch){const r=this.globalSearch.toLowerCase(),a=this._getSearchFields();e=e.filter(o=>(a.length?a:Object.keys(o)).some(s=>{var n;return String((n=o[s])!=null?n:"").toLowerCase().includes(r)}))}const t=this.lazy?this.total:e.length;if(this.sortField&&e.sort((r,a)=>{const o=r[this.sortField],i=a[this.sortField];return typeof o=="number"&&typeof i=="number"?(o-i)*this.sortDir:String(o!=null?o:"").localeCompare(String(i!=null?i:""),"pt-BR")*this.sortDir}),this.hasAttr("pagination")&&!this.lazy){const r=this.page*this.rowsPerPage;e=e.slice(r,r+this.rowsPerPage)}return{rows:e,total:t}}_getSearchFields(){const e=this.root.querySelector("[data-search-fields]");if(!e)return[];const t=e.getAttribute("data-search-fields");return t===null?[]:t.split(",").map(r=>r.trim()).filter(Boolean)}cellHtml(e,t){var a,o,i;const r=(o=(a=e.template)==null?void 0:a.innerHTML)!=null?o:e.directTemplate;return r?ur(r,t,e.field):h(String((i=t[e.field])!=null?i:""))}render(){var g;const e=this.columns.filter(u=>u.field),{rows:t,total:r}=this.computeRows(),a=this.hasAttr("pagination"),o=Math.max(1,Math.ceil(r/this.rowsPerPage));this.page>=o&&(this.page=o-1);const i=this.toolbarTemplate,s=i?`<div class="toolbar" part="toolbar">${i.innerHTML}</div>`:"",n=e.map(u=>{const x=this.sortField===u.field,y=x?this.sortDir===1?"▲":"▼":u.sortable?"⇅":"",S=x?"active":"";return`<th part="header" class="${u.sortable?"sortable":""}" style="text-align:${u.align}" data-field="${h(u.field)}">${h(u.header)}${y?`<span class="sort-ind ${S}">${y}</span>`:""}</th>`}).join(""),l=e.some(u=>u.filterable)?`<tr class="filter-row">${e.map(u=>{var x;return`<th style="text-align:${u.align}">${u.filterable?`<input class="filter" data-field="${h(u.field)}" placeholder="${h("Filtrar…")}" value="${h((x=this.filters[u.field])!=null?x:"")}">`:""}</th>`}).join("")}</tr>`:"",p=t.length?t.map((u,x)=>`<tr part="row" data-index="${x}">${e.map(y=>`<td part="cell" style="text-align:${y.align}">${this.cellHtml(y,u)}</td>`).join("")}</tr>`).join(""):`<tr><td class="empty" colspan="${e.length||1}">${h(this.getAttr("empty-message","Nenhum registro encontrado"))}</td></tr>`,f=a?`
|
|
1273
1273
|
<div class="pager" part="pager">
|
|
1274
1274
|
<span class="info">Página ${this.page+1} de ${o} · ${r} registros</span>
|
|
1275
1275
|
<button type="button" class="pg-btn" data-pg="first" ${this.page===0?"disabled":""}>«</button>
|
|
1276
1276
|
<button type="button" class="pg-btn" data-pg="prev" ${this.page===0?"disabled":""}>‹</button>
|
|
1277
|
-
${Array.from({length:o},(u,
|
|
1277
|
+
${Array.from({length:o},(u,x)=>`<button type="button" class="pg-btn" data-pg="${x}" aria-current="${x===this.page}">${x+1}</button>`).join("")}
|
|
1278
1278
|
<button type="button" class="pg-btn" data-pg="next" ${this.page>=o-1?"disabled":""}>›</button>
|
|
1279
1279
|
<button type="button" class="pg-btn" data-pg="last" ${this.page>=o-1?"disabled":""}>»</button>
|
|
1280
1280
|
<label class="info">${h("Por página:")}
|
|
@@ -1292,7 +1292,7 @@
|
|
|
1292
1292
|
${c}
|
|
1293
1293
|
</div>
|
|
1294
1294
|
${f}
|
|
1295
|
-
`),this.root.querySelectorAll("th.sortable").forEach(u=>{u.addEventListener("click",()=>{const
|
|
1295
|
+
`),this.root.querySelectorAll("th.sortable").forEach(u=>{u.addEventListener("click",()=>{const x=u.dataset.field;this.sortField===x?this.sortDir=this.sortDir===1?-1:1:(this.sortField=x,this.sortDir=1),this.render(),this.dispatchEvent(new CustomEvent("sort-change",{bubbles:!0,composed:!0,detail:{field:this.sortField,direction:this.sortDir===1?"asc":"desc",lazy:this.lazy}}))})}),this.root.querySelectorAll(".filter").forEach(u=>{u.addEventListener("input",()=>{const x=u.dataset.field,y=u.value,S=u.selectionStart;this.filters[x]=y,this.page=0,this.render(),this.dispatchEvent(new CustomEvent("filter-change",{bubbles:!0,composed:!0,detail:{field:x,value:y,lazy:this.lazy}}));const A=this.root.querySelector(`.filter[data-field="${h(x)}"]`);A&&(A.focus(),A.setSelectionRange(S,S))}),u.addEventListener("click",x=>x.stopPropagation())}),this.root.querySelectorAll("[data-search-fields]").forEach(u=>{u.addEventListener("input",()=>{this.globalSearch=u.value,this.page=0;const x=u.selectionStart;this.render();const y=this.root.querySelector("[data-search-fields]");y&&(y.focus(),y.setSelectionRange(x,x))})}),this.root.querySelectorAll(".pg-btn").forEach(u=>{u.addEventListener("click",()=>{const x=u.dataset.pg;this.page=x==="first"?0:x==="prev"?Math.max(0,this.page-1):x==="next"?Math.min(o-1,this.page+1):x==="last"?o-1:Number(x),this.render(),this.dispatchEvent(new CustomEvent("page-change",{bubbles:!0,composed:!0,detail:{page:this.page+1,pages:o,rowsPerPage:this.rowsPerPage,total:r,lazy:this.lazy}}))})}),(g=this.root.querySelector("fx-select.rows-sel"))==null||g.addEventListener("change",u=>{var y;const x=Number((y=u.detail)==null?void 0:y.value);!x||x===this.rowsPerPage||(this.rowsPerPage=x,this.page=0,this.render())}),this.root.querySelectorAll("tbody tr[data-index]").forEach(u=>{u.addEventListener("click",()=>{this.dispatchEvent(new CustomEvent("row-click",{bubbles:!0,composed:!0,detail:{row:t[Number(u.dataset.index)],index:Number(u.dataset.index)}}))})}),this._restoreToolbarSearch()}_restoreToolbarSearch(){const e=this.root.querySelector("[data-search-fields]");e&&this.globalSearch&&(e.value=this.globalSearch)}};Ye.styles=m`
|
|
1296
1296
|
:host {
|
|
1297
1297
|
display: block;
|
|
1298
1298
|
font-family: var(--fx-font-family);
|
|
@@ -1494,7 +1494,7 @@
|
|
|
1494
1494
|
color: var(--fx-text-muted);
|
|
1495
1495
|
font-size: calc(var(--fx-font-size) - 1px);
|
|
1496
1496
|
}
|
|
1497
|
-
`;let W=
|
|
1497
|
+
`;let W=Ye;function _r(){return v("fx-table",W)}_r();const Ue=class Ue extends b{constructor(){super(...arguments),this.targetControl=null,this.observer=null,this.listenersReady=!1}static get observedAttributes(){return["variant","error","invalid","success","valid","full","icon","icon-pos"]}render(){var s;const e=this.findControl(),r=this.findLabel(),a=r?(s=r.textContent)==null?void 0:s.replace(/\s+/g," ").trim():"",o=r&&r.getAttribute("for")||"",i=this.getAttribute("variant")==="over";this.setTemplate(`
|
|
1498
1498
|
<div class="wrapper" part="wrapper">
|
|
1499
1499
|
${i?`<label class="flabel" part="label" for="${o}">${a}</label>`:""}
|
|
1500
1500
|
<div class="field-box" part="field">
|
|
@@ -1503,7 +1503,7 @@
|
|
|
1503
1503
|
</div>
|
|
1504
1504
|
<div class="error-message" part="error"></div>
|
|
1505
1505
|
</div>
|
|
1506
|
-
`),r&&r.setAttribute("hidden",""),this.attachEvents(),this.syncControlReference(e),this.syncState(),this.applyError(),this.applyFull(),this.applyIcon(),this.syncIconIndent()}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this.observer)==null||e.disconnect()}findControl(){var e;return(e=Array.from(this.children).find(t=>t.tagName.toLowerCase()!=="label"))!=null?e:null}findLabel(){var e;return(e=Array.from(this.children).find(t=>t.tagName.toLowerCase()==="label"))!=null?e:null}attachEvents(){const e=this.root.querySelector("slot");e&&e.addEventListener("slotchange",()=>{const t=this.findControl();this.syncControlReference(t),this.syncState(),this.applyError(),this.applyFull()}),!this.listenersReady&&(this.listenersReady=!0,this.addEventListener("focusin",()=>this.syncState()),this.addEventListener("focusout",()=>setTimeout(()=>this.syncState(),60)),this.addEventListener("input",()=>this.syncState()),this.addEventListener("change",()=>this.syncState()))}syncControlReference(e=this.targetControl){var t;e!==this.targetControl&&((t=this.observer)==null||t.disconnect(),this.observer=null,this.targetControl=e,e&&(this.observer=new MutationObserver(()=>{this.syncState(),this.syncIconIndent()}),this.observer.observe(e,{attributes:!0,attributeFilter:["value","values","start","end","open","icon","icon-pos"]})))}syncState(){var i,s,n;if(this.targetControl&&!this.targetControl.isConnected&&(this.targetControl=null,(i=this.observer)==null||i.disconnect(),this.observer=null),!this.targetControl){this.removeAttribute("active"),this.removeAttribute("focus");return}const e=this.targetControl,t=e.getAttribute?((s=e.getAttribute("value"))!=null?s:"").trim():"",r=e.getAttribute?((n=e.getAttribute("values"))!=null?n:"").trim():"",a=!!(typeof e.value=="string"&&e.value.trim()!==""||Array.isArray(e.values)&&e.values.length>0||t!==""||r!==""||e.hasAttribute&&(e.hasAttribute("open")||e.hasAttribute("start"))),o=this.isFocusedInside();a||o?(this.setAttribute("active",""),o?this.setAttribute("focus",""):this.removeAttribute("focus")):(this.removeAttribute("active"),this.removeAttribute("focus"))}syncIconIndent(){const e=this.root.querySelector(".flabel");if(!e)return;const t=this.targetControl,r=!!(t&&(t.hasAttribute("icon")||t.querySelector(':scope > [slot="icon"]'))&&t.getAttribute("icon-pos")!=="right");e.classList.toggle("icon-indent",r)}applyFull(){this.targetControl&&typeof this.targetControl.setAttribute=="function"&&(this.hasAttr("full")?this.targetControl.setAttribute("full",""):this.targetControl.removeAttribute("full"))}applyIcon(){if(this.targetControl&&typeof this.targetControl.setAttribute=="function"&&this.hasAttr("icon")){const e=this.getAttr("icon"),t=this.getAttr("icon-pos");e!==""?this.targetControl.setAttribute("icon",e):this.targetControl.setAttribute("icon",""),t&&t!=="left"?this.targetControl.setAttribute("icon-pos",t):this.targetControl.removeAttribute("icon-pos")}}applyError(){var r;const e=this.hasAttr("error")||this.hasAttr("invalid"),t=this.root.querySelector(".error-message");if(t&&(t.textContent=e?((r=this.getAttribute("error-text"))==null?void 0:r.trim())||"Valor inválido":""),this.targetControl&&typeof this.targetControl.setAttribute=="function"){const a=this.targetControl;e?(a.setAttribute("error",""),a.removeAttribute("success")):this.hasAttr("success")||this.hasAttr("valid")?(a.setAttribute("success",""),a.removeAttribute("error")):(a.removeAttribute("error"),a.removeAttribute("success"))}}isWithin(e){let t=e;for(;t&&t!==this;)t=t.parentElement;return t===this}isFocusedInside(){const e=document.activeElement;return!!(e&&this.isWithin(e))}};
|
|
1506
|
+
`),r&&r.setAttribute("hidden",""),this.attachEvents(),this.syncControlReference(e),this.syncState(),this.applyError(),this.applyFull(),this.applyIcon(),this.syncIconIndent()}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this.observer)==null||e.disconnect()}findControl(){var e;return(e=Array.from(this.children).find(t=>t.tagName.toLowerCase()!=="label"))!=null?e:null}findLabel(){var e;return(e=Array.from(this.children).find(t=>t.tagName.toLowerCase()==="label"))!=null?e:null}attachEvents(){const e=this.root.querySelector("slot");e&&e.addEventListener("slotchange",()=>{const t=this.findControl();this.syncControlReference(t),this.syncState(),this.applyError(),this.applyFull()}),!this.listenersReady&&(this.listenersReady=!0,this.addEventListener("focusin",()=>this.syncState()),this.addEventListener("focusout",()=>setTimeout(()=>this.syncState(),60)),this.addEventListener("input",()=>this.syncState()),this.addEventListener("change",()=>this.syncState()))}syncControlReference(e=this.targetControl){var t;e!==this.targetControl&&((t=this.observer)==null||t.disconnect(),this.observer=null,this.targetControl=e,e&&(this.observer=new MutationObserver(()=>{this.syncState(),this.syncIconIndent()}),this.observer.observe(e,{attributes:!0,attributeFilter:["value","values","start","end","open","icon","icon-pos"]})))}syncState(){var i,s,n;if(this.targetControl&&!this.targetControl.isConnected&&(this.targetControl=null,(i=this.observer)==null||i.disconnect(),this.observer=null),!this.targetControl){this.removeAttribute("active"),this.removeAttribute("focus");return}const e=this.targetControl,t=e.getAttribute?((s=e.getAttribute("value"))!=null?s:"").trim():"",r=e.getAttribute?((n=e.getAttribute("values"))!=null?n:"").trim():"",a=!!(typeof e.value=="string"&&e.value.trim()!==""||Array.isArray(e.values)&&e.values.length>0||t!==""||r!==""||e.hasAttribute&&(e.hasAttribute("open")||e.hasAttribute("start"))),o=this.isFocusedInside();a||o?(this.setAttribute("active",""),o?this.setAttribute("focus",""):this.removeAttribute("focus")):(this.removeAttribute("active"),this.removeAttribute("focus"))}syncIconIndent(){const e=this.root.querySelector(".flabel");if(!e)return;const t=this.targetControl,r=!!(t&&(t.hasAttribute("icon")||t.querySelector(':scope > [slot="icon"]'))&&t.getAttribute("icon-pos")!=="right");e.classList.toggle("icon-indent",r)}applyFull(){this.targetControl&&typeof this.targetControl.setAttribute=="function"&&(this.hasAttr("full")?this.targetControl.setAttribute("full",""):this.targetControl.removeAttribute("full"))}applyIcon(){if(this.targetControl&&typeof this.targetControl.setAttribute=="function"&&this.hasAttr("icon")){const e=this.getAttr("icon"),t=this.getAttr("icon-pos");e!==""?this.targetControl.setAttribute("icon",e):this.targetControl.setAttribute("icon",""),t&&t!=="left"?this.targetControl.setAttribute("icon-pos",t):this.targetControl.removeAttribute("icon-pos")}}applyError(){var r;const e=this.hasAttr("error")||this.hasAttr("invalid"),t=this.root.querySelector(".error-message");if(t&&(t.textContent=e?((r=this.getAttribute("error-text"))==null?void 0:r.trim())||"Valor inválido":""),this.targetControl&&typeof this.targetControl.setAttribute=="function"){const a=this.targetControl;e?(a.setAttribute("error",""),a.removeAttribute("success")):this.hasAttr("success")||this.hasAttr("valid")?(a.setAttribute("success",""),a.removeAttribute("error")):(a.removeAttribute("error"),a.removeAttribute("success"))}}isWithin(e){let t=e;for(;t&&t!==this;)t=t.parentElement;return t===this}isFocusedInside(){const e=document.activeElement;return!!(e&&this.isWithin(e))}};Ue.styles=m`
|
|
1507
1507
|
:host {
|
|
1508
1508
|
display: inline-block;
|
|
1509
1509
|
position: relative;
|
|
@@ -1636,11 +1636,11 @@
|
|
|
1636
1636
|
:host([invalid]) .error-message {
|
|
1637
1637
|
display: block;
|
|
1638
1638
|
}
|
|
1639
|
-
`;let G=
|
|
1639
|
+
`;let G=Ue;function mr(){return v("fx-floatlabel",G)}mr();const Je=class Je extends b{static get observedAttributes(){return["size","placeholder","disabled","readonly","rows","maxlength","error","invalid","success","valid"]}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}get value(){return this.getAttr("value")}set value(e){this.setAttribute("value",e)}render(){const e=this.getAttr("placeholder"),t=this.hasAttr("readonly"),r=this.hasAttr("disabled"),a=this.getAttr("rows"),o=this.getAttr("maxlength");this.setTemplate(`<textarea class="field" part="textarea"
|
|
1640
1640
|
${e?`placeholder="${h(e)}"`:""}
|
|
1641
1641
|
${a?`rows="${h(a)}"`:""}
|
|
1642
1642
|
${o?`maxlength="${h(o)}"`:""}
|
|
1643
|
-
></textarea>`);const i=this.root.querySelector(".field");if(!i)return;i.value=this.getAttr("value"),r&&i.setAttribute("disabled",""),t&&i.setAttribute("readonly","");const s=n=>{this.value=i.value,this.dispatchEvent(new CustomEvent(n,{bubbles:!0,composed:!0,detail:{value:i.value}}))};i.addEventListener("input",n=>{n.stopPropagation(),s("input")}),i.addEventListener("change",n=>{n.stopPropagation(),s("change")})}};
|
|
1643
|
+
></textarea>`);const i=this.root.querySelector(".field");if(!i)return;i.value=this.getAttr("value"),r&&i.setAttribute("disabled",""),t&&i.setAttribute("readonly","");const s=n=>{this.value=i.value,this.dispatchEvent(new CustomEvent(n,{bubbles:!0,composed:!0,detail:{value:i.value}}))};i.addEventListener("input",n=>{n.stopPropagation(),s("input")}),i.addEventListener("change",n=>{n.stopPropagation(),s("change")})}};Je.styles=m`
|
|
1644
1644
|
:host {
|
|
1645
1645
|
display: inline-block;
|
|
1646
1646
|
vertical-align: middle;
|
|
@@ -1701,7 +1701,7 @@
|
|
|
1701
1701
|
/* Full width: o host estica até o pai e o campo interno acompanha. */
|
|
1702
1702
|
:host([full]) { display: block; width: 100%; }
|
|
1703
1703
|
:host([full]) .field { width: 100%; }
|
|
1704
|
-
`;let Z=
|
|
1704
|
+
`;let Z=Je;function gr(){return v("fx-textarea",Z)}gr();const We=class We extends b{constructor(){super(...arguments),this._previouslyFocused=null}static get observedAttributes(){return["open","size","heading"]}get open(){return this.hasAttr("open")}set open(e){this.toggleAttr("open",e)}render(){var s;const e=this.open,t=this.getAttr("heading");if(this.setTemplate(`
|
|
1705
1705
|
<div class="overlay" part="overlay" ${e?"":"hidden"}>
|
|
1706
1706
|
<div class="dialog" role="dialog" aria-modal="true" aria-label="${h(t)}" tabindex="-1">
|
|
1707
1707
|
<header>
|
|
@@ -1712,7 +1712,7 @@
|
|
|
1712
1712
|
<footer part="footer"><slot name="footer"></slot></footer>
|
|
1713
1713
|
</div>
|
|
1714
1714
|
</div>
|
|
1715
|
-
`),!e)return;(s=this._cleanup)==null||s.call(this),this._cleanup=void 0;const r=this.root.querySelector(".overlay"),a=this.root.querySelector(".close"),o=()=>{var n;this.open=!1,(n=this._cleanup)==null||n.call(this),this._cleanup=void 0,this._restoreFocus(),this.dispatchEvent(new CustomEvent("close",{bubbles:!0,composed:!0}))};r==null||r.addEventListener("click",n=>{n.target===r&&o()}),a==null||a.addEventListener("click",o);const i=n=>{if(n.key==="Escape"){n.stopPropagation(),o();return}n.key==="Tab"&&this._trapFocus(n)};document.addEventListener("keydown",i),this._cleanup=()=>document.removeEventListener("keydown",i),requestAnimationFrame(()=>{var n;this._previouslyFocused=document.activeElement,(n=this.root.querySelector(".dialog"))==null||n.focus()}),this.dispatchEvent(new CustomEvent("open",{bubbles:!0,composed:!0}))}_trapFocus(e){const t=this.root.querySelector(".dialog");if(!t)return;const r=t.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(!r.length)return;const a=r[0],o=r[r.length-1],i=this.root.activeElement;e.shiftKey&&(i===a||i===t)?(e.preventDefault(),o.focus()):!e.shiftKey&&i===o&&(e.preventDefault(),a.focus())}_restoreFocus(){var e;(e=this._previouslyFocused)!=null&&e.isConnected&&this._previouslyFocused.focus(),this._previouslyFocused=null}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this._cleanup)==null||e.call(this),this._cleanup=void 0,this._restoreFocus()}};
|
|
1715
|
+
`),!e)return;(s=this._cleanup)==null||s.call(this),this._cleanup=void 0;const r=this.root.querySelector(".overlay"),a=this.root.querySelector(".close"),o=()=>{var n;this.open=!1,(n=this._cleanup)==null||n.call(this),this._cleanup=void 0,this._restoreFocus(),this.dispatchEvent(new CustomEvent("close",{bubbles:!0,composed:!0}))};r==null||r.addEventListener("click",n=>{n.target===r&&o()}),a==null||a.addEventListener("click",o);const i=n=>{if(n.key==="Escape"){n.stopPropagation(),o();return}n.key==="Tab"&&this._trapFocus(n)};document.addEventListener("keydown",i),this._cleanup=()=>document.removeEventListener("keydown",i),requestAnimationFrame(()=>{var n;this._previouslyFocused=document.activeElement,(n=this.root.querySelector(".dialog"))==null||n.focus()}),this.dispatchEvent(new CustomEvent("open",{bubbles:!0,composed:!0}))}_trapFocus(e){const t=this.root.querySelector(".dialog");if(!t)return;const r=t.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(!r.length)return;const a=r[0],o=r[r.length-1],i=this.root.activeElement;e.shiftKey&&(i===a||i===t)?(e.preventDefault(),o.focus()):!e.shiftKey&&i===o&&(e.preventDefault(),a.focus())}_restoreFocus(){var e;(e=this._previouslyFocused)!=null&&e.isConnected&&this._previouslyFocused.focus(),this._previouslyFocused=null}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this._cleanup)==null||e.call(this),this._cleanup=void 0,this._restoreFocus()}};We.styles=m`
|
|
1716
1716
|
:host { display: contents; }
|
|
1717
1717
|
.overlay {
|
|
1718
1718
|
position: fixed;
|
|
@@ -1789,7 +1789,7 @@
|
|
|
1789
1789
|
gap: var(--fx-space-sm);
|
|
1790
1790
|
}
|
|
1791
1791
|
footer[hidden] { display: none; }
|
|
1792
|
-
`;let Q=
|
|
1792
|
+
`;let Q=We;function br(){return v("fx-dialog",Q)}br();const Ge=class Ge extends b{constructor(){super(...arguments),this._previouslyFocused=null,this._onReposition=()=>{if(!this.open)return;const e=this.root.querySelector(".popup");e&&!e.hidden&&this._position(e)}}static get observedAttributes(){return["open","target","message","icon","accept-label","reject-label","position"]}get open(){return this.hasAttr("open")}set open(e){this.toggleAttr("open",e)}render(){var p,f,_;const e=this.getAttr("message"),t=this.getAttr("icon"),r=C(t);r&&Promise.resolve().then(()=>I);const a=this.getAttr("accept-label","Sim"),o=this.getAttr("reject-label","Não");if(this.setTemplate(`
|
|
1793
1793
|
<div class="popup" part="popup" role="alertdialog" aria-modal="false" ${this.open?"":"hidden"}>
|
|
1794
1794
|
<div class="message" part="message">
|
|
1795
1795
|
${t?`<span class="icon${r?" fx-icon":""}" aria-hidden="true">${h(t)}</span>`:""}
|
|
@@ -1804,7 +1804,7 @@
|
|
|
1804
1804
|
</slot>
|
|
1805
1805
|
</footer>
|
|
1806
1806
|
</div>
|
|
1807
|
-
`),!this.open)return;const i=this.root.querySelector(".popup");if(!i)return;(p=this._cleanup)==null||p.call(this),this._cleanup=void 0;const s=c=>{var g;this.open=!1,(g=this._cleanup)==null||g.call(this),this._cleanup=void 0,this._restoreFocus(),this.dispatchEvent(new CustomEvent(c,{bubbles:!0,composed:!0}))};(f=this.root.querySelector(".reject"))==null||f.addEventListener("click",()=>s("reject")),(_=this.root.querySelector(".accept"))==null||_.addEventListener("click",()=>s("accept"));const n=c=>{c.key==="Escape"&&(c.stopPropagation(),s("reject"))},l=c=>{const g=c.composedPath(),u=this._anchor(),
|
|
1807
|
+
`),!this.open)return;const i=this.root.querySelector(".popup");if(!i)return;(p=this._cleanup)==null||p.call(this),this._cleanup=void 0;const s=c=>{var g;this.open=!1,(g=this._cleanup)==null||g.call(this),this._cleanup=void 0,this._restoreFocus(),this.dispatchEvent(new CustomEvent(c,{bubbles:!0,composed:!0}))};(f=this.root.querySelector(".reject"))==null||f.addEventListener("click",()=>s("reject")),(_=this.root.querySelector(".accept"))==null||_.addEventListener("click",()=>s("accept"));const n=c=>{c.key==="Escape"&&(c.stopPropagation(),s("reject"))},l=c=>{const g=c.composedPath(),u=this._anchor(),x=u?g.includes(u):!1;!g.includes(i)&&!x&&s("reject")};document.addEventListener("keydown",n),document.addEventListener("pointerdown",l,!0),this._cleanup=()=>{document.removeEventListener("keydown",n),document.removeEventListener("pointerdown",l,!0)},this._position(i),this._previouslyFocused=document.activeElement,requestAnimationFrame(()=>{var c;(c=this.root.querySelector("button.accept"))==null||c.focus()})}_anchor(){const e=this.getAttr("target");if(!e)return null;try{return document.querySelector(e)}catch(t){return null}}_position(e){const t=this._anchor();if(!t)return;e.hidden=!1;const r=t.getBoundingClientRect(),a=e.getBoundingClientRect(),o=8,i=8;let s;const n=this.getAttr("position","auto");n==="top"?s="top":n==="bottom"?s="bottom":s=r.bottom+o+a.height<=window.innerHeight-i?"bottom":"top";const l=Math.min(Math.max(i,r.left+r.width/2-a.width/2),window.innerWidth-a.width-i),p=s==="bottom"?r.bottom+o:r.top-o-a.height;e.dataset.side=s,e.style.left=`${Math.round(l)}px`,e.style.top=`${Math.round(Math.max(i,p))}px`;const f=Math.min(Math.max(r.left+r.width/2-l,16),a.width-16);e.style.setProperty("--fxcp-arrow-x",`${Math.round(f)}px`)}_restoreFocus(){var e;(e=this._previouslyFocused)!=null&&e.isConnected&&this._previouslyFocused.focus(),this._previouslyFocused=null}connectedCallback(){super.connectedCallback(),window.addEventListener("scroll",this._onReposition,!0),window.addEventListener("resize",this._onReposition)}disconnectedCallback(){var e;super.disconnectedCallback(),window.removeEventListener("scroll",this._onReposition,!0),window.removeEventListener("resize",this._onReposition),(e=this._cleanup)==null||e.call(this),this._cleanup=void 0,this._restoreFocus()}};Ge.styles=m`
|
|
1808
1808
|
:host { display: contents; }
|
|
1809
1809
|
.popup {
|
|
1810
1810
|
position: fixed;
|
|
@@ -1886,13 +1886,13 @@
|
|
|
1886
1886
|
color: #fff;
|
|
1887
1887
|
}
|
|
1888
1888
|
footer button.accept:hover { filter: brightness(0.92); background: var(--fx-color-primary); }
|
|
1889
|
-
`;let ee=
|
|
1889
|
+
`;let ee=Ge;function vr(){return v("fx-confirmpopup",ee)}vr();const Ze=class Ze extends b{constructor(){super(...arguments),this._files=[],this._done=!1}static get observedAttributes(){return["mode","size","severity","label","icon","accept","multiple","disabled","show-progress","progress","value","full"]}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}get value(){return this.getAttr("value")}set value(e){this.setAttribute("value",e)}get progress(){return Math.min(100,Math.max(0,Number(this.getAttr("progress","0"))||0))}set progress(e){this.setAttribute("progress",String(e))}get files(){return this._files}set files(e){this._files=Array.from(e),this.value=this._files.map(t=>t.name).join(", "),this._syncFilesArea()}render(){const t=this.getAttr("mode","basic")==="advanced",r=this.getAttr("label","Escolher arquivo"),a=this.getAttr("icon"),o=this.getAttr("accept"),i=this.hasAttr("multiple"),s=this.hasAttr("disabled"),n=this.hasAttr("show-progress"),l=this.progress,p=`<input type="file" class="picker" ${o?`accept="${h(o)}"`:""} ${i?"multiple":""} ${s?"disabled":""} />`;this.setTemplate(`
|
|
1890
1890
|
${t?`<div class="drop" part="dropzone" role="button" tabindex="0" aria-label="${h(r)}">
|
|
1891
|
-
${a?`<span class="icon" part="icon" aria-hidden="true">${
|
|
1891
|
+
${a?`<span class="icon" part="icon" aria-hidden="true">${L(a)}</span>`:""}
|
|
1892
1892
|
<span>${h(r)}</span>
|
|
1893
1893
|
<span class="hint">ou arraste e solte aqui</span>
|
|
1894
1894
|
</div>`:`<button type="button" class="btn" part="button">
|
|
1895
|
-
${a?`<span class="icon" part="icon" aria-hidden="true">${
|
|
1895
|
+
${a?`<span class="icon" part="icon" aria-hidden="true">${L(a)}</span>`:""}
|
|
1896
1896
|
<span>${h(r)}</span>
|
|
1897
1897
|
</button>`}
|
|
1898
1898
|
${p}
|
|
@@ -1909,7 +1909,7 @@
|
|
|
1909
1909
|
<span class="name">${h(a.name)}</span>
|
|
1910
1910
|
<span class="size">${this._fmtSize(a.size)}</span>
|
|
1911
1911
|
<button type="button" class="remove" data-i="${o}" part="remove" aria-label="Remover ${h(a.name)}">×</button>
|
|
1912
|
-
</div>`).join(""),e.querySelectorAll(".remove").forEach(a=>a.addEventListener("click",()=>{const o=this._files.splice(Number(a.dataset.i),1)[0];this.value=this._files.map(i=>i.name).join(", "),this.progress=0,this._syncFilesArea(),this.dispatchEvent(new CustomEvent("remove",{bubbles:!0,composed:!0,detail:{file:o}}))})))}};
|
|
1912
|
+
</div>`).join(""),e.querySelectorAll(".remove").forEach(a=>a.addEventListener("click",()=>{const o=this._files.splice(Number(a.dataset.i),1)[0];this.value=this._files.map(i=>i.name).join(", "),this.progress=0,this._syncFilesArea(),this.dispatchEvent(new CustomEvent("remove",{bubbles:!0,composed:!0,detail:{file:o}}))})))}};Ze.styles=m`
|
|
1913
1913
|
:host {
|
|
1914
1914
|
display: inline-block;
|
|
1915
1915
|
font-family: var(--fx-font-family);
|
|
@@ -2049,7 +2049,7 @@
|
|
|
2049
2049
|
:host([full]) .drop { width: 100%; }
|
|
2050
2050
|
/* Base dos glifos Fenix Icons (o @font-face vem de @wrrdev/fenix-ui/icons). */
|
|
2051
2051
|
${E}
|
|
2052
|
-
`;let te=
|
|
2052
|
+
`;let te=Ze;function xr(){return v("fx-fileupload",te)}xr();const Qe=class Qe extends b{constructor(){super(...arguments),this._dragging=!1}static get observedAttributes(){return["min","max","step","size","disabled","show-value","label"]}get min(){return this._num("min",0)}get max(){return this._num("max",100)}get step(){return this._num("step",1)}get value(){return this._clamp(this._num("value",this.min))}set value(e){const t=this._snap(e);this.setAttribute("value",String(t)),this.isConnected&&this._syncVisual()}_num(e,t){const r=this.getAttribute(e);if(r===null||r==="")return t;const a=Number(r);return Number.isFinite(a)?a:t}_clamp(e){return Math.min(this.max,Math.max(this.min,e))}_snap(e){const t=this.step||1,r=Math.round((this._clamp(e)-this.min)/t)*t+this.min;return Number(this._clamp(r).toFixed(10))}_pct(){const e=this.max-this.min;return e<=0?0:(this.value-this.min)/e*100}render(){const e=this._pct(),t=this.getAttr("label"),r=this.hasAttr("show-value");this.setTemplate(`
|
|
2053
2053
|
${t?`<div class="label" part="label"><span>${t}</span>${r?`<span>${this.value}</span>`:""}</div>`:""}
|
|
2054
2054
|
<div class="track-wrap" part="track" tabindex="0" role="slider"
|
|
2055
2055
|
aria-valuemin="${this.min}" aria-valuemax="${this.max}" aria-valuenow="${this.value}"
|
|
@@ -2058,7 +2058,7 @@
|
|
|
2058
2058
|
<div class="thumb" part="thumb" style="left: ${e}%"></div>
|
|
2059
2059
|
${r?`<span class="value" style="left: ${e}%">${this.value}</span>`:""}
|
|
2060
2060
|
</div>
|
|
2061
|
-
`),this._bindPointer(),this._bindKeyboard()}disconnectedCallback(){super.disconnectedCallback(),this._dragging&&(this._dragging=!1,this._onMove&&window.removeEventListener("pointermove",this._onMove),this._onUp&&window.removeEventListener("pointerup",this._onUp))}_wrap(){return this.root.querySelector(".track-wrap")}_bindPointer(){const e=this._wrap();if(!e)return;const t=o=>{const i=e.getBoundingClientRect(),s=i.width<=0?0:(o.clientX-i.left)/i.width;return this.min+s*(this.max-this.min)},r=o=>{this._dragging&&(this.value=t(o),this._syncVisual(),this.dispatchEvent(new CustomEvent("input",{bubbles:!0,composed:!0,detail:{value:this.value}})))};this._onMove=r;const a=o=>{this._dragging&&(this._dragging=!1,e.classList.remove("dragging"),window.removeEventListener("pointermove",r),window.removeEventListener("pointerup",a),this.value=t(o),this._syncVisual(),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:this.value}})))};this._onUp=a,e.addEventListener("pointerdown",o=>{this.hasAttr("disabled")||(this._dragging=!0,e.classList.add("dragging"),e.focus(),this.value=t(o),this._syncVisual(),this.dispatchEvent(new CustomEvent("input",{bubbles:!0,composed:!0,detail:{value:this.value}})),window.addEventListener("pointermove",r),window.addEventListener("pointerup",a))})}_bindKeyboard(){const e=this._wrap();e&&e.addEventListener("keydown",t=>{if(this.hasAttr("disabled"))return;const r=t,a=(this.max-this.min)/10;let o=null;switch(r.key){case"ArrowRight":case"ArrowUp":o=this.value+this.step;break;case"ArrowLeft":case"ArrowDown":o=this.value-this.step;break;case"PageUp":o=this.value+a;break;case"PageDown":o=this.value-a;break;case"Home":o=this.min;break;case"End":o=this.max;break;default:return}r.preventDefault(),this.value=o,this._syncVisual(),this.dispatchEvent(new CustomEvent("input",{bubbles:!0,composed:!0,detail:{value:this.value}})),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:this.value}}))})}_syncVisual(){const e=this._pct(),t=this._wrap();if(!t)return;const r=t.querySelector(".fill"),a=t.querySelector(".thumb"),o=t.querySelector(".value");r&&(r.style.width=`${e}%`),a&&(a.style.left=`${e}%`),o&&(o.style.left=`${e}%`,o.textContent=String(this.value)),t.setAttribute("aria-valuenow",String(this.value));const i=this.root.querySelector(".label span:last-child");i&&(i.textContent=String(this.value))}};
|
|
2061
|
+
`),this._bindPointer(),this._bindKeyboard()}disconnectedCallback(){super.disconnectedCallback(),this._dragging&&(this._dragging=!1,this._onMove&&window.removeEventListener("pointermove",this._onMove),this._onUp&&window.removeEventListener("pointerup",this._onUp))}_wrap(){return this.root.querySelector(".track-wrap")}_bindPointer(){const e=this._wrap();if(!e)return;const t=o=>{const i=e.getBoundingClientRect(),s=i.width<=0?0:(o.clientX-i.left)/i.width;return this.min+s*(this.max-this.min)},r=o=>{this._dragging&&(this.value=t(o),this._syncVisual(),this.dispatchEvent(new CustomEvent("input",{bubbles:!0,composed:!0,detail:{value:this.value}})))};this._onMove=r;const a=o=>{this._dragging&&(this._dragging=!1,e.classList.remove("dragging"),window.removeEventListener("pointermove",r),window.removeEventListener("pointerup",a),this.value=t(o),this._syncVisual(),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:this.value}})))};this._onUp=a,e.addEventListener("pointerdown",o=>{this.hasAttr("disabled")||(this._dragging=!0,e.classList.add("dragging"),e.focus(),this.value=t(o),this._syncVisual(),this.dispatchEvent(new CustomEvent("input",{bubbles:!0,composed:!0,detail:{value:this.value}})),window.addEventListener("pointermove",r),window.addEventListener("pointerup",a))})}_bindKeyboard(){const e=this._wrap();e&&e.addEventListener("keydown",t=>{if(this.hasAttr("disabled"))return;const r=t,a=(this.max-this.min)/10;let o=null;switch(r.key){case"ArrowRight":case"ArrowUp":o=this.value+this.step;break;case"ArrowLeft":case"ArrowDown":o=this.value-this.step;break;case"PageUp":o=this.value+a;break;case"PageDown":o=this.value-a;break;case"Home":o=this.min;break;case"End":o=this.max;break;default:return}r.preventDefault(),this.value=o,this._syncVisual(),this.dispatchEvent(new CustomEvent("input",{bubbles:!0,composed:!0,detail:{value:this.value}})),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:this.value}}))})}_syncVisual(){const e=this._pct(),t=this._wrap();if(!t)return;const r=t.querySelector(".fill"),a=t.querySelector(".thumb"),o=t.querySelector(".value");r&&(r.style.width=`${e}%`),a&&(a.style.left=`${e}%`),o&&(o.style.left=`${e}%`,o.textContent=String(this.value)),t.setAttribute("aria-valuenow",String(this.value));const i=this.root.querySelector(".label span:last-child");i&&(i.textContent=String(this.value))}};Qe.styles=m`
|
|
2062
2062
|
:host {
|
|
2063
2063
|
display: block;
|
|
2064
2064
|
font-family: var(--fx-font-family);
|
|
@@ -2136,14 +2136,14 @@
|
|
|
2136
2136
|
.track-wrap:hover .value,
|
|
2137
2137
|
.track-wrap.dragging .value,
|
|
2138
2138
|
.track-wrap:focus-visible .value { opacity: 1; }
|
|
2139
|
-
`;let re=
|
|
2139
|
+
`;let re=Qe;function yr(){return v("fx-slider",re)}yr();const et=class et extends b{static get observedAttributes(){return["variant","size","removable","selectable","selected","disabled","icon"]}get selected(){return this.hasAttr("selected")}set selected(e){this.toggleAttr("selected",e)}render(){const e=this.getAttr("icon"),t=this.hasAttr("removable"),r=this.hasAttr("disabled"),a=(this.hasAttr("selectable")||this.hasAttr("href"))&&!r;this.setTemplate(`
|
|
2140
2140
|
<span class="chip ${a?"clickable":""}" part="chip" role="${a?"button":"status"}"
|
|
2141
2141
|
${a?`tabindex="0" aria-pressed="${this.selected}"`:""} ${r?'aria-disabled="true"':""}>
|
|
2142
|
-
${e?`<span class="icon" aria-hidden="true">${
|
|
2142
|
+
${e?`<span class="icon" aria-hidden="true">${L(e)}</span>`:""}
|
|
2143
2143
|
<slot></slot>
|
|
2144
2144
|
<button type="button" class="remove" part="remove" aria-label="Remover" ${t?"":"hidden"}>×</button>
|
|
2145
2145
|
</span>
|
|
2146
|
-
`);const o=this.root.querySelector(".chip"),i=this.root.querySelector(".remove");if(!(!o||!i)&&(i.addEventListener("click",s=>{s.stopPropagation(),this.dispatchEvent(new CustomEvent("remove",{bubbles:!0,composed:!0}))}),a)){const s=()=>{this.hasAttr("selectable")&&(this.selected=!this.selected,o.setAttribute("aria-pressed",String(this.selected))),this.dispatchEvent(new CustomEvent("chip-click",{bubbles:!0,composed:!0}))};o.addEventListener("click",s),o.addEventListener("keydown",n=>{const l=n;(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),s())})}}};
|
|
2146
|
+
`);const o=this.root.querySelector(".chip"),i=this.root.querySelector(".remove");if(!(!o||!i)&&(i.addEventListener("click",s=>{s.stopPropagation(),this.dispatchEvent(new CustomEvent("remove",{bubbles:!0,composed:!0}))}),a)){const s=()=>{this.hasAttr("selectable")&&(this.selected=!this.selected,o.setAttribute("aria-pressed",String(this.selected))),this.dispatchEvent(new CustomEvent("chip-click",{bubbles:!0,composed:!0}))};o.addEventListener("click",s),o.addEventListener("keydown",n=>{const l=n;(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),s())})}}};et.styles=m`
|
|
2147
2147
|
:host {
|
|
2148
2148
|
display: inline-block;
|
|
2149
2149
|
font-family: var(--fx-font-family);
|
|
@@ -2208,11 +2208,11 @@
|
|
|
2208
2208
|
}
|
|
2209
2209
|
.remove:hover { background: rgba(0, 0, 0, 0.18); }
|
|
2210
2210
|
.remove[hidden] { display: none; }
|
|
2211
|
-
`;let ae=
|
|
2211
|
+
`;let ae=et;function wr(){return v("fx-chip",ae)}wr();const tt=class tt extends b{static get observedAttributes(){return["size","shape","variant","src","alt"]}get variant(){return this.getAttr("variant","text")}get src(){return this.getAttr("src")}set src(e){this.setAttribute("src",e)}render(){const e=this.variant,t=this.getAttr("src"),r=this.getAttr("alt",""),a=e==="icon",o=e==="image"&&t;this.setTemplate(`
|
|
2212
2212
|
<span class="avatar${o?" image":a?" icon-slot":" text"}" part="avatar" aria-label="${h(r)}" role="img">
|
|
2213
2213
|
${o?`<img src="${h(t)}" alt="${h(r)}">`:a?'<slot name="icon" class="slot-icon"></slot>':"<slot></slot>"}
|
|
2214
2214
|
</span>
|
|
2215
|
-
`)}};
|
|
2215
|
+
`)}};tt.styles=m`
|
|
2216
2216
|
:host {
|
|
2217
2217
|
display: inline-block;
|
|
2218
2218
|
font-family: var(--fx-font-family);
|
|
@@ -2263,13 +2263,33 @@
|
|
|
2263
2263
|
}
|
|
2264
2264
|
:host(.avatar-group) > .avatar:last-child { margin-left: 0; }
|
|
2265
2265
|
:host(.avatar-group) > .avatar:hover { z-index: 2; }
|
|
2266
|
-
`;let oe=
|
|
2266
|
+
`;let oe=tt;function kr(){return v("fx-avatar",oe)}kr();function Ar(){return"./fenix-icons.woff2"}const zr=Ar(),Sr="fenix-icons-font",Dt="fenix-icons";function Mt(){return`@font-face{font-family:'${j}';font-style:normal;font-weight:100 700;font-display:block;src:url('${zr}') format('woff2');}`}function It(){return Mt()+E}let M=!1;function Nt(d=typeof document!="undefined"?document:void 0){if(M||!d)return;if(d.getElementById(Dt)){M=!0;return}const e=d.createElement("style");e.id=Sr,e.textContent=It(),d.head.appendChild(e),M=!0}function jt(){M=!1}const rt=class rt extends b{static get observedAttributes(){return["name","size","label","fill","bold"]}get name(){return this.getAttr("name")}set name(e){this.setAttribute("name",e)}get size(){return this.getAttr("size")}set size(e){e?this.setAttribute("size",e):this.removeAttribute("size")}get label(){return this.getAttr("label")}set label(e){e?this.setAttribute("label",e):this.removeAttribute("label")}connectedCallback(){Nt(),super.connectedCallback()}render(){const e=this.getAttr("name").trim(),t=this.getAttr("label").trim(),r=t?`role="img" aria-label="${h(t)}"`:'aria-hidden="true"';if(!e){this.setTemplate(`<span class="icon" part="icon" ${r}></span>`);return}const a=C(e)?`<i class="icon fx-icon" part="icon" ${r}>${h(e)}</i>`:`<span class="icon" part="icon" ${r}>${h(e)}</span>`;this.setTemplate(a)}};rt.styles=m`
|
|
2267
|
+
:host {
|
|
2268
|
+
display: inline-flex;
|
|
2269
|
+
align-items: center;
|
|
2270
|
+
justify-content: center;
|
|
2271
|
+
vertical-align: middle;
|
|
2272
|
+
line-height: 1;
|
|
2273
|
+
color: currentColor;
|
|
2274
|
+
font-size: var(--fx-icon-size, 1em);
|
|
2275
|
+
}
|
|
2276
|
+
:host([size='sm']) { font-size: var(--fx-icon-size-sm, 16px); }
|
|
2277
|
+
:host([size='md']) { font-size: var(--fx-icon-size-md, 20px); }
|
|
2278
|
+
:host([size='lg']) { font-size: var(--fx-icon-size-lg, 24px); }
|
|
2279
|
+
:host([size='xl']) { font-size: var(--fx-icon-size-xl, 32px); }
|
|
2280
|
+
:host([hidden]) { display: none; }
|
|
2281
|
+
.icon { display: inline-block; }
|
|
2282
|
+
/* Variantes da fonte (FILL/wght): vencem a classe base .fx-icon. */
|
|
2283
|
+
:host([fill]) .icon { font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24; }
|
|
2284
|
+
:host([bold]) .icon { font-variation-settings: 'FILL' 0, 'wght' 600, 'GRAD' 0, 'opsz' 24; }
|
|
2285
|
+
${E}
|
|
2286
|
+
`;let ie=rt;function $r(){return v("fx-icon",ie)}$r();const at=class at extends b{static get observedAttributes(){return["variant","radius","size","padded","heading"]}render(){const e=this.getAttr("heading");this.setTemplate(`
|
|
2267
2287
|
<div class="card" part="card">
|
|
2268
2288
|
<header part="header" ${e?"":"hidden"}>${h(e)}<slot name="header"></slot></header>
|
|
2269
2289
|
<div class="body" part="content"><slot></slot></div>
|
|
2270
2290
|
<footer part="footer"><slot name="footer"></slot></footer>
|
|
2271
2291
|
</div>
|
|
2272
|
-
`)}};
|
|
2292
|
+
`)}};at.styles=m`
|
|
2273
2293
|
:host {
|
|
2274
2294
|
display: block;
|
|
2275
2295
|
font-family: var(--fx-font-family);
|
|
@@ -2323,9 +2343,9 @@
|
|
|
2323
2343
|
gap: var(--fx-space-sm);
|
|
2324
2344
|
}
|
|
2325
2345
|
footer[hidden] { display: none; }
|
|
2326
|
-
`;let
|
|
2346
|
+
`;let se=at;function Er(){return v("fx-card",se)}Er();const ot=class ot extends b{constructor(){super(...arguments),this._items=[]}static get observedAttributes(){return["size","separator","label"]}render(){const e=this.getAttr("label","Breadcrumb");this.setTemplate(`
|
|
2327
2347
|
<nav part="nav" aria-label="${h(e)}"></nav>
|
|
2328
|
-
`),this._decorateItems()}_decorateItems(){var r;const e=(r=this.shadowRoot)==null?void 0:r.querySelector("nav");if(!e)return;const t=this.getAttr("separator","/");this._items.length===0&&(this._items=Array.from(this.children).filter(a=>a.matches('[slot="item"]'))),e.innerHTML="",this._items.forEach((a,o)=>{const i=o===this._items.length-1;if(a.setAttribute("aria-current",i?"page":"false"),e.appendChild(a),i)return;const s=document.createElement("span");s.className="sep",s.setAttribute("part","separator"),s.setAttribute("aria-hidden","true"),s.textContent=t,e.appendChild(s)})}connectedCallback(){super.connectedCallback();const e=new MutationObserver(()=>{this.children.length>0&&(e.disconnect(),this._decorateItems())});e.observe(this,{childList:!0}),this.children.length>0&&this._decorateItems()}disconnectedCallback(){super.disconnectedCallback(),this._items=[]}};
|
|
2348
|
+
`),this._decorateItems()}_decorateItems(){var r;const e=(r=this.shadowRoot)==null?void 0:r.querySelector("nav");if(!e)return;const t=this.getAttr("separator","/");this._items.length===0&&(this._items=Array.from(this.children).filter(a=>a.matches('[slot="item"]'))),e.innerHTML="",this._items.forEach((a,o)=>{const i=o===this._items.length-1;if(a.setAttribute("aria-current",i?"page":"false"),e.appendChild(a),i)return;const s=document.createElement("span");s.className="sep",s.setAttribute("part","separator"),s.setAttribute("aria-hidden","true"),s.textContent=t,e.appendChild(s)})}connectedCallback(){super.connectedCallback();const e=new MutationObserver(()=>{this.children.length>0&&(e.disconnect(),this._decorateItems())});e.observe(this,{childList:!0}),this.children.length>0&&this._decorateItems()}disconnectedCallback(){super.disconnectedCallback(),this._items=[]}};ot.styles=m`
|
|
2329
2349
|
:host {
|
|
2330
2350
|
display: block;
|
|
2331
2351
|
font-family: var(--fx-font-family);
|
|
@@ -2364,13 +2384,13 @@
|
|
|
2364
2384
|
display: inline-flex;
|
|
2365
2385
|
align-items: center;
|
|
2366
2386
|
}
|
|
2367
|
-
`;let
|
|
2387
|
+
`;let ne=ot;function Cr(){return v("fx-breadcrumb",ne)}Cr();const it=class it extends b{constructor(){super(...arguments),this._previouslyFocused=null,this._onReposition=()=>{if(!this.open)return;const e=this.root.querySelector(".popup");e&&!e.hidden&&this._position(e)},this._onEnter=()=>{this.open=!0},this._onLeave=()=>{this.open=!1},this._onClick=()=>{this.open=!this.open}}static get observedAttributes(){return["open","target","trigger","position","dismissible"]}get open(){return this.hasAttr("open")}set open(e){this.toggleAttr("open",e)}render(){var o;if(this.setTemplate(`
|
|
2368
2388
|
<div class="popup" part="popover" role="dialog" aria-modal="false" ${this.open?"":"hidden"}>
|
|
2369
2389
|
<header part="header" hidden><slot name="header"></slot></header>
|
|
2370
2390
|
<div class="body" part="content"><slot></slot></div>
|
|
2371
2391
|
<footer part="footer" hidden><slot name="footer"></slot></footer>
|
|
2372
2392
|
</div>
|
|
2373
|
-
`),!this.open)return;const e=this.root.querySelector(".popup");if(!e)return;(o=this._cleanup)==null||o.call(this),this._cleanup=void 0;const t=()=>{var i;this.open=!1,(i=this._cleanup)==null||i.call(this),this._cleanup=void 0,this._restoreFocus(),this.dispatchEvent(new CustomEvent("hide",{bubbles:!0,composed:!0}))},r=i=>{i.key==="Escape"&&(i.stopPropagation(),t())},a=i=>{if(!this.hasAttr("dismissible"))return;const s=i.composedPath(),n=this._anchor(),l=n?s.includes(n):!1;!s.includes(e)&&!l&&t()};document.addEventListener("keydown",r),document.addEventListener("pointerdown",a,!0),this._cleanup=()=>{document.removeEventListener("keydown",r),document.removeEventListener("pointerdown",a,!0)},this._syncSlots(),this._position(e),this._previouslyFocused=document.activeElement,requestAnimationFrame(()=>e.focus({preventScroll:!0})),this.dispatchEvent(new CustomEvent("show",{bubbles:!0,composed:!0}))}_anchor(){const e=this.getAttr("target");if(!e)return null;try{return document.querySelector(e)}catch(t){return null}}_syncSlots(){const e=this.root.querySelector('slot[name="header"]'),t=this.root.querySelector('slot[name="footer"]'),r=this.root.querySelector("header"),a=this.root.querySelector("footer"),o=!!e&&e.assignedNodes().length>0,i=!!t&&t.assignedNodes().length>0;r==null||r.toggleAttribute("hidden",!o),a==null||a.toggleAttribute("hidden",!i)}_position(e){const t=this._anchor();if(!t)return;e.hidden=!1;const r=t.getBoundingClientRect(),a=e.getBoundingClientRect(),o=8,i=8;let s;const n=this.getAttr("position","auto");n==="top"?s="top":n==="bottom"?s="bottom":s=r.bottom+o+a.height<=window.innerHeight-i?"bottom":"top",s==="top"&&r.top-o-a.height<i&&r.bottom+o+a.height<=window.innerHeight-i?s="bottom":s==="bottom"&&r.bottom+o+a.height>window.innerHeight-i&&r.top-o-a.height>=i&&(s="top");const l=Math.min(Math.max(i,r.left+r.width/2-a.width/2),window.innerWidth-a.width-i),p=s==="bottom"?r.bottom+o:r.top-o-a.height;e.dataset.side=s,e.style.left=`${Math.round(l)}px`,e.style.top=`${Math.round(Math.max(i,p))}px`;const f=Math.min(Math.max(r.left+r.width/2-l,16),a.width-16);e.style.setProperty("--fxpp-arrow-x",`${Math.round(f)}px`)}_restoreFocus(){var e;(e=this._previouslyFocused)!=null&&e.isConnected&&this._previouslyFocused.focus(),this._previouslyFocused=null}connectedCallback(){super.connectedCallback(),window.addEventListener("scroll",this._onReposition,!0),window.addEventListener("resize",this._onReposition),this._bindTrigger()}disconnectedCallback(){var e,t;super.disconnectedCallback(),window.removeEventListener("scroll",this._onReposition,!0),window.removeEventListener("resize",this._onReposition),(e=this._triggerCleanup)==null||e.call(this),this._triggerCleanup=void 0,(t=this._cleanup)==null||t.call(this),this._cleanup=void 0,this._restoreFocus()}_bindTrigger(){const e=this._anchor();if(!e)return;this.getAttr("trigger","click")==="hover"?(e.addEventListener("mouseenter",this._onEnter),e.addEventListener("mouseleave",this._onLeave),this._triggerCleanup=()=>{e.removeEventListener("mouseenter",this._onEnter),e.removeEventListener("mouseleave",this._onLeave)}):(e.addEventListener("pointerdown",this._onClick),this._triggerCleanup=()=>e.removeEventListener("pointerdown",this._onClick))}};
|
|
2393
|
+
`),!this.open)return;const e=this.root.querySelector(".popup");if(!e)return;(o=this._cleanup)==null||o.call(this),this._cleanup=void 0;const t=()=>{var i;this.open=!1,(i=this._cleanup)==null||i.call(this),this._cleanup=void 0,this._restoreFocus(),this.dispatchEvent(new CustomEvent("hide",{bubbles:!0,composed:!0}))},r=i=>{i.key==="Escape"&&(i.stopPropagation(),t())},a=i=>{if(!this.hasAttr("dismissible"))return;const s=i.composedPath(),n=this._anchor(),l=n?s.includes(n):!1;!s.includes(e)&&!l&&t()};document.addEventListener("keydown",r),document.addEventListener("pointerdown",a,!0),this._cleanup=()=>{document.removeEventListener("keydown",r),document.removeEventListener("pointerdown",a,!0)},this._syncSlots(),this._position(e),this._previouslyFocused=document.activeElement,requestAnimationFrame(()=>e.focus({preventScroll:!0})),this.dispatchEvent(new CustomEvent("show",{bubbles:!0,composed:!0}))}_anchor(){const e=this.getAttr("target");if(!e)return null;try{return document.querySelector(e)}catch(t){return null}}_syncSlots(){const e=this.root.querySelector('slot[name="header"]'),t=this.root.querySelector('slot[name="footer"]'),r=this.root.querySelector("header"),a=this.root.querySelector("footer"),o=!!e&&e.assignedNodes().length>0,i=!!t&&t.assignedNodes().length>0;r==null||r.toggleAttribute("hidden",!o),a==null||a.toggleAttribute("hidden",!i)}_position(e){const t=this._anchor();if(!t)return;e.hidden=!1;const r=t.getBoundingClientRect(),a=e.getBoundingClientRect(),o=8,i=8;let s;const n=this.getAttr("position","auto");n==="top"?s="top":n==="bottom"?s="bottom":s=r.bottom+o+a.height<=window.innerHeight-i?"bottom":"top",s==="top"&&r.top-o-a.height<i&&r.bottom+o+a.height<=window.innerHeight-i?s="bottom":s==="bottom"&&r.bottom+o+a.height>window.innerHeight-i&&r.top-o-a.height>=i&&(s="top");const l=Math.min(Math.max(i,r.left+r.width/2-a.width/2),window.innerWidth-a.width-i),p=s==="bottom"?r.bottom+o:r.top-o-a.height;e.dataset.side=s,e.style.left=`${Math.round(l)}px`,e.style.top=`${Math.round(Math.max(i,p))}px`;const f=Math.min(Math.max(r.left+r.width/2-l,16),a.width-16);e.style.setProperty("--fxpp-arrow-x",`${Math.round(f)}px`)}_restoreFocus(){var e;(e=this._previouslyFocused)!=null&&e.isConnected&&this._previouslyFocused.focus(),this._previouslyFocused=null}connectedCallback(){super.connectedCallback(),window.addEventListener("scroll",this._onReposition,!0),window.addEventListener("resize",this._onReposition),this._bindTrigger()}disconnectedCallback(){var e,t;super.disconnectedCallback(),window.removeEventListener("scroll",this._onReposition,!0),window.removeEventListener("resize",this._onReposition),(e=this._triggerCleanup)==null||e.call(this),this._triggerCleanup=void 0,(t=this._cleanup)==null||t.call(this),this._cleanup=void 0,this._restoreFocus()}_bindTrigger(){const e=this._anchor();if(!e)return;this.getAttr("trigger","click")==="hover"?(e.addEventListener("mouseenter",this._onEnter),e.addEventListener("mouseleave",this._onLeave),this._triggerCleanup=()=>{e.removeEventListener("mouseenter",this._onEnter),e.removeEventListener("mouseleave",this._onLeave)}):(e.addEventListener("pointerdown",this._onClick),this._triggerCleanup=()=>e.removeEventListener("pointerdown",this._onClick))}};it.styles=m`
|
|
2374
2394
|
:host { display: contents; }
|
|
2375
2395
|
.popup {
|
|
2376
2396
|
position: fixed;
|
|
@@ -2429,14 +2449,14 @@
|
|
|
2429
2449
|
gap: var(--fx-space-sm);
|
|
2430
2450
|
}
|
|
2431
2451
|
footer[hidden] { display: none; }
|
|
2432
|
-
`;let
|
|
2452
|
+
`;let le=it;function Lr(){return v("fx-popover",le)}Lr();const st=class st extends b{constructor(){super(...arguments),this._titles=[],this._panels=[]}static get observedAttributes(){return["active","linear","show-numbers"]}get stepCount(){return this._titles.length}get active(){const e=Number(this.getAttr("active","0"));return Math.min(this.stepCount-1,Math.max(0,Number.isFinite(e)?e:0))}set active(e){this.setAttribute("active",String(Math.min(this.stepCount-1,Math.max(0,e))))}get isLast(){return this.active>=this.stepCount-1}goTo(e){const t=Math.min(this.stepCount-1,Math.max(0,e));this.hasAttr("linear")&&t>this.active+1||(this.active=t,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{index:this.active}})),this.isLast&&this.dispatchEvent(new CustomEvent("complete",{bubbles:!0,composed:!0})))}next(){this.goTo(this.active+1)}prev(){this.goTo(this.active-1)}render(){this._panels=Array.from(this.children).filter(a=>a.matches('[slot^="step-"]')),this._titles=this._panels.map((a,o)=>a.getAttribute("step-title")||`Paso ${o+1}`);const e=Math.min(this.active,Math.max(0,this._titles.length-1)),t=this._titles.map((a,o)=>{const i=o===e?"active":o<e?"done":"",s=o<e&&!this.hasAttr("show-numbers")?"✓":String(o+1);return`<span class="step ${i}" part="step" data-i="${o}"><span class="num">${s}</span>${h(a)}</span>`}).join(""),r=this._panels.map((a,o)=>`<section class="panel" part="panel" ${o===e?"":"hidden"}>${a.innerHTML}</section>`).join("");this.setTemplate(`
|
|
2433
2453
|
<div class="steps" part="steps">${t}</div>
|
|
2434
2454
|
<div class="panel-wrap">${r}</div>
|
|
2435
2455
|
<div class="actions" part="actions">
|
|
2436
2456
|
<button type="button" class="nav-btn prev" part="prev" ${e===0?"disabled":""}>Anterior</button>
|
|
2437
2457
|
<button type="button" class="nav-btn primary next" part="next">${e===this._titles.length-1?"Concluir":"Próximo"}</button>
|
|
2438
2458
|
</div>
|
|
2439
|
-
`),this._bindSteps()}_bindSteps(){var t,r;Array.from(this.root.querySelectorAll(".step")).forEach(a=>{const o=Number(a.dataset.i);a.addEventListener("click",()=>{this.hasAttr("linear")&&o>this.active+1||this.goTo(o)}),a.addEventListener("keydown",i=>{i.key==="Enter"&&(i.preventDefault(),this.goTo(o))})}),(t=this.root.querySelector(".nav-btn.prev"))==null||t.addEventListener("click",()=>this.prev()),(r=this.root.querySelector(".nav-btn.next"))==null||r.addEventListener("click",()=>this.next())}connectedCallback(){super.connectedCallback(),this._titles.length===0&&this.render()}};
|
|
2459
|
+
`),this._bindSteps()}_bindSteps(){var t,r;Array.from(this.root.querySelectorAll(".step")).forEach(a=>{const o=Number(a.dataset.i);a.addEventListener("click",()=>{this.hasAttr("linear")&&o>this.active+1||this.goTo(o)}),a.addEventListener("keydown",i=>{i.key==="Enter"&&(i.preventDefault(),this.goTo(o))})}),(t=this.root.querySelector(".nav-btn.prev"))==null||t.addEventListener("click",()=>this.prev()),(r=this.root.querySelector(".nav-btn.next"))==null||r.addEventListener("click",()=>this.next())}connectedCallback(){super.connectedCallback(),this._titles.length===0&&this.render()}};st.styles=m`
|
|
2440
2460
|
:host { display: block; font-family: var(--fx-font-family); font-size: var(--fx-font-size); }
|
|
2441
2461
|
:host([linear]) .step-num.activated { cursor: not-allowed; }
|
|
2442
2462
|
|
|
@@ -2499,11 +2519,11 @@
|
|
|
2499
2519
|
color: #fff;
|
|
2500
2520
|
}
|
|
2501
2521
|
.nav-btn.primary:hover:not(:disabled) { filter: brightness(0.92); background: var(--fx-color-primary); }
|
|
2502
|
-
`;let
|
|
2522
|
+
`;let ce=st;function Tr(){return v("fx-stepper",ce)}Tr();const nt=class nt extends b{static get observedAttributes(){return["value","max","readonly","disabled","allow-half","size"]}get value(){const e=Number(this.getAttr("value","0"));return Number.isFinite(e)?Math.min(this.max,Math.max(0,e)):0}set value(e){this.setAttribute("value",String(Math.min(this.max,Math.max(0,e)))),this._syncVisual()}get max(){const e=Number(this.getAttr("max","5")),t=Number.isFinite(e)?Math.round(e):5;return Math.min(10,Math.max(1,t))}set max(e){this.setAttribute("max",String(e))}render(){const e=this.max,t=Array.from({length:e},(r,a)=>a+1).map(r=>`<span class="star" data-n="${r}" part="star" title="${r} ${this._label(r)}">★</span>`).join("");this.setTemplate(`
|
|
2503
2523
|
<span class="stars" part="stars" role="radiogroup">
|
|
2504
2524
|
${t}
|
|
2505
2525
|
</span>
|
|
2506
|
-
`),this._bindStars(),this._syncVisual()}_starNodes(){return Array.from(this.root.querySelectorAll(".star"))}_label(e){return e===1?"estrella":"estrellas"}_syncVisual(){const e=this.value;this._starNodes().forEach(t=>{const r=Number(t.dataset.n);t.classList.toggle("filled",e>=r)})}_bindStars(){this._starNodes().forEach(t=>{const r=Number(t.dataset.n);t.addEventListener("click",()=>{if(this.hasAttr("readonly")||this.hasAttr("disabled"))return;let a=r;this.hasAttr("allow-half")&&(a+=-.5),this.value=a,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:this.value}}))}),t.addEventListener("mouseenter",()=>{this.hasAttr("readonly")||this.hasAttr("disabled")||this._hover(r)}),t.addEventListener("mouseleave",()=>this._syncVisual())})}_hover(e){this._starNodes().forEach(t=>{const r=Number(t.dataset.n);t.classList.toggle("hovered",r<=e)})}};
|
|
2526
|
+
`),this._bindStars(),this._syncVisual()}_starNodes(){return Array.from(this.root.querySelectorAll(".star"))}_label(e){return e===1?"estrella":"estrellas"}_syncVisual(){const e=this.value;this._starNodes().forEach(t=>{const r=Number(t.dataset.n);t.classList.toggle("filled",e>=r)})}_bindStars(){this._starNodes().forEach(t=>{const r=Number(t.dataset.n);t.addEventListener("click",()=>{if(this.hasAttr("readonly")||this.hasAttr("disabled"))return;let a=r;this.hasAttr("allow-half")&&(a+=-.5),this.value=a,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:this.value}}))}),t.addEventListener("mouseenter",()=>{this.hasAttr("readonly")||this.hasAttr("disabled")||this._hover(r)}),t.addEventListener("mouseleave",()=>this._syncVisual())})}_hover(e){this._starNodes().forEach(t=>{const r=Number(t.dataset.n);t.classList.toggle("hovered",r<=e)})}};nt.styles=m`
|
|
2507
2527
|
:host {
|
|
2508
2528
|
display: inline-flex;
|
|
2509
2529
|
font-family: var(--fx-font-family);
|
|
@@ -2538,7 +2558,7 @@
|
|
|
2538
2558
|
.star[hidden] { display: none; }
|
|
2539
2559
|
.star.filled { color: var(--fx-color-warning); }
|
|
2540
2560
|
.star.hovered { color: var(--fx-color-warning); }
|
|
2541
|
-
`;let
|
|
2561
|
+
`;let de=nt;function qr(){return v("fx-rating",de)}qr();const lt=class lt extends b{constructor(){super(...arguments),this._onOutside=e=>{const t=e.composedPath();this.root.querySelectorAll(".dropdown.open").forEach(r=>{t.includes(r)||r.classList.remove("open")})}}static get observedAttributes(){return["orientation","size","dense","titles"]}get orientation(){return this.getAttr("orientation","horizontal")}get items(){return Array.from(this.children).filter(e=>e.matches('[slot="item"]')).map(e=>e)}render(){const e=this.getAttr("titles"),t=e?e.split(",").map(o=>o.trim()):[],a=this.items.map((o,i)=>{var f;const s=t[i]||((f=o.textContent)==null?void 0:f.trim())||`Item ${i+1}`,n=o.matches("[submenu]"),l=o.hasAttribute("disabled"),p=`
|
|
2542
2562
|
<span class="item" part="item" data-i="${i}" ${l?'aria-disabled="true"':""}>
|
|
2543
2563
|
${h(s)}${n?'<span class="caret">▾</span>':""}
|
|
2544
2564
|
</span>`;return n?`
|
|
@@ -2549,7 +2569,7 @@
|
|
|
2549
2569
|
<nav part="menu" aria-label="Menu">
|
|
2550
2570
|
${a}
|
|
2551
2571
|
</nav>
|
|
2552
|
-
`),this._bindItems()}_bindItems(){Array.from(this.root.querySelectorAll(".item")).forEach(t=>{const r=Number(t.dataset.i);t.addEventListener("click",()=>{var i,s,n,l;if(t.getAttribute("aria-disabled")==="true")return;const a=this.items[r];if(a==null?void 0:a.hasAttribute("submenu")){this.root.querySelectorAll(".dropdown.open").forEach(p=>{var f;p!==((f=t.parentElement)==null?void 0:f.querySelector(".dropdown"))&&p.classList.remove("open")}),(s=(i=t.parentElement)==null?void 0:i.querySelector(".dropdown"))==null||s.classList.toggle("open");return}this._setActive(t),this.dispatchEvent(new CustomEvent("select",{bubbles:!0,composed:!0,detail:{index:r,label:(l=(n=t.textContent)==null?void 0:n.trim())!=null?l:""}}))}),t.addEventListener("keydown",a=>{const o=a;(o.key==="Enter"||o.key===" ")&&(o.preventDefault(),t.click())})})}connectedCallback(){super.connectedCallback(),document.addEventListener("pointerdown",this._onOutside)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("pointerdown",this._onOutside)}_setActive(e){Array.from(this.root.querySelectorAll(".item")).forEach(t=>{t.classList.toggle("active",t===e)})}};
|
|
2572
|
+
`),this._bindItems()}_bindItems(){Array.from(this.root.querySelectorAll(".item")).forEach(t=>{const r=Number(t.dataset.i);t.addEventListener("click",()=>{var i,s,n,l;if(t.getAttribute("aria-disabled")==="true")return;const a=this.items[r];if(a==null?void 0:a.hasAttribute("submenu")){this.root.querySelectorAll(".dropdown.open").forEach(p=>{var f;p!==((f=t.parentElement)==null?void 0:f.querySelector(".dropdown"))&&p.classList.remove("open")}),(s=(i=t.parentElement)==null?void 0:i.querySelector(".dropdown"))==null||s.classList.toggle("open");return}this._setActive(t),this.dispatchEvent(new CustomEvent("select",{bubbles:!0,composed:!0,detail:{index:r,label:(l=(n=t.textContent)==null?void 0:n.trim())!=null?l:""}}))}),t.addEventListener("keydown",a=>{const o=a;(o.key==="Enter"||o.key===" ")&&(o.preventDefault(),t.click())})})}connectedCallback(){super.connectedCallback(),document.addEventListener("pointerdown",this._onOutside)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("pointerdown",this._onOutside)}_setActive(e){Array.from(this.root.querySelectorAll(".item")).forEach(t=>{t.classList.toggle("active",t===e)})}};lt.styles=m`
|
|
2553
2573
|
:host { display: block; font-family: var(--fx-font-family); font-size: var(--fx-font-size); }
|
|
2554
2574
|
:host([orientation='vertical']) { border: 1px solid var(--fx-border-default); border-radius: var(--fx-radius-md); }
|
|
2555
2575
|
nav {
|
|
@@ -2600,11 +2620,11 @@
|
|
|
2600
2620
|
}
|
|
2601
2621
|
.dropdown.open { display: flex; }
|
|
2602
2622
|
:host([orientation='vertical']) .dropdown { left: 100%; top: 0; }
|
|
2603
|
-
`;let
|
|
2623
|
+
`;let he=lt;function Dr(){return v("fx-menu",he)}Dr();const ct=class ct extends b{static get observedAttributes(){return["multiple","size"]}get value(){const e=this.getAttr("value");return e?e.split(",").map(t=>t.trim()).filter(Boolean):[]}set value(e){this.setAttribute("value",e.join(","))}get multiple(){return this.hasAttr("multiple")}get options(){return Array.from(this.children).filter(e=>e.matches('[slot="option"]')).map(e=>e)}render(){const e=this.options,t=this.value,r=e.map((a,o)=>{var n,l;const i=(n=a.getAttribute("value"))!=null?n:"",s=t.includes(i);return`<button type="button" class="option ${s?"active":""}" part="option" data-v="${h(i)}" aria-pressed="${s}">${h(((l=a.textContent)==null?void 0:l.trim())||`Opción ${o+1}`)}</button>`}).join("");this.setTemplate(`
|
|
2604
2624
|
<div class="options" part="options" role="group" aria-label="Toggle buttons">
|
|
2605
2625
|
${r}
|
|
2606
2626
|
</div>
|
|
2607
|
-
`),this._bindOptions()}_bindOptions(){Array.from(this.root.querySelectorAll(".option")||[]).forEach(e=>{e.addEventListener("click",()=>this._toggle(e)),e.addEventListener("keydown",t=>{const r=t;(r.key==="Enter"||r.key===" ")&&(r.preventDefault(),this._toggle(e))})})}_toggle(e){var a;const t=(a=e.dataset.v)!=null?a:"";let r=this.value;this.multiple?r.includes(t)?r=r.filter(o=>o!==t):r.push(t):r=r.includes(t)?[]:[t],this.value=r,this.root.querySelectorAll(".option").forEach(o=>{var s;const i=r.includes((s=o.dataset.v)!=null?s:"");o.classList.toggle("active",i),o.setAttribute("aria-pressed",String(i))}),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:r}}))}};
|
|
2627
|
+
`),this._bindOptions()}_bindOptions(){Array.from(this.root.querySelectorAll(".option")||[]).forEach(e=>{e.addEventListener("click",()=>this._toggle(e)),e.addEventListener("keydown",t=>{const r=t;(r.key==="Enter"||r.key===" ")&&(r.preventDefault(),this._toggle(e))})})}_toggle(e){var a;const t=(a=e.dataset.v)!=null?a:"";let r=this.value;this.multiple?r.includes(t)?r=r.filter(o=>o!==t):r.push(t):r=r.includes(t)?[]:[t],this.value=r,this.root.querySelectorAll(".option").forEach(o=>{var s;const i=r.includes((s=o.dataset.v)!=null?s:"");o.classList.toggle("active",i),o.setAttribute("aria-pressed",String(i))}),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:r}}))}};ct.styles=m`
|
|
2608
2628
|
:host { display: inline-flex; font-family: var(--fx-font-family); font-size: var(--fx-font-size); gap: var(--fx-space-xs); }
|
|
2609
2629
|
.option {
|
|
2610
2630
|
display: inline-flex;
|
|
@@ -2633,15 +2653,15 @@
|
|
|
2633
2653
|
color: #fff;
|
|
2634
2654
|
}
|
|
2635
2655
|
.option.active:hover { filter: brightness(0.92); }
|
|
2636
|
-
`;let
|
|
2656
|
+
`;let pe=ct;function Mr(){return v("fx-toggle-button-group",pe)}Mr();const dt=class dt extends b{static get observedAttributes(){return["icon","heading","description"]}render(){const e=this.getAttr("icon","📭"),t=this.getAttr("heading"),r=this.getAttr("description");this.setTemplate(`
|
|
2637
2657
|
<div class="wrap" part="wrap">
|
|
2638
|
-
<span class="icon" part="icon" aria-hidden="true">${
|
|
2658
|
+
<span class="icon" part="icon" aria-hidden="true">${L(e)}</span>
|
|
2639
2659
|
<h4 part="heading" ${t?"":"hidden"}>${h(t)}</h4>
|
|
2640
2660
|
<p part="description" ${r?"":"hidden"}>${h(r)}</p>
|
|
2641
2661
|
<slot name="icon"></slot>
|
|
2642
2662
|
<span class="action"><slot name="action"></slot></span>
|
|
2643
2663
|
</div>
|
|
2644
|
-
`)}};
|
|
2664
|
+
`)}};dt.styles=m`
|
|
2645
2665
|
:host {
|
|
2646
2666
|
display: flex;
|
|
2647
2667
|
justify-content: center;
|
|
@@ -2681,7 +2701,7 @@
|
|
|
2681
2701
|
.action:empty { display: none; }
|
|
2682
2702
|
/* Base dos glifos Fenix Icons (o @font-face vem de @wrrdev/fenix-ui/icons). */
|
|
2683
2703
|
${E}
|
|
2684
|
-
`;let
|
|
2704
|
+
`;let ue=dt;function Ir(){return v("fx-empty-state",ue)}Ir();const ht=class ht extends b{constructor(){super(...arguments),this._prevScore=-1}static get observedAttributes(){return["value","label","size"]}get value(){return this.getAttr("value")}set value(e){this.setAttribute("value",e)}_score(){const e=this.value;if(!e)return 0;let t=0;return e.length>=6&&t++,e.length>=10&&t++,/[A-Z]/.test(e)&&/[a-z]/.test(e)&&t++,/\d/.test(e)&&/[^A-Za-z0-9]/.test(e)&&t++,Math.min(4,t)}_labelFor(e){return["Muito fraca","Fraca","Razoável","Forte","Muito forte"][e]}render(){this._paint()}_paint(){const e=this._score(),t=this.getAttr("label","Força da senha");this.setTemplate(`
|
|
2685
2705
|
<div class="label" part="label">
|
|
2686
2706
|
<span>${t}</span>
|
|
2687
2707
|
<strong>${e>0?this._labelFor(e):""}</strong>
|
|
@@ -2689,7 +2709,7 @@
|
|
|
2689
2709
|
<div class="bars" part="bars" role="progressbar" aria-valuemin="0" aria-valuemax="4" aria-valuenow="${e}">
|
|
2690
2710
|
${Array.from({length:4},(r,a)=>`<span class="bar ${a<e?"on":""}" part="bar"></span>`).join("")}
|
|
2691
2711
|
</div>
|
|
2692
|
-
`),this.dataset.score=String(e)}attributeChangedCallback(){if(this.isConnected){const e=this._prevScore;this._paint();const t=this._score();t!==e&&(this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{score:t,value:this.value}})),this._prevScore=t)}}};
|
|
2712
|
+
`),this.dataset.score=String(e)}attributeChangedCallback(){if(this.isConnected){const e=this._prevScore;this._paint();const t=this._score();t!==e&&(this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{score:t,value:this.value}})),this._prevScore=t)}}};ht.styles=m`
|
|
2693
2713
|
:host {
|
|
2694
2714
|
display: block;
|
|
2695
2715
|
font-family: var(--fx-font-family);
|
|
@@ -2724,7 +2744,7 @@
|
|
|
2724
2744
|
:host([data-score='2']) { --_color: var(--fx-color-warning); }
|
|
2725
2745
|
:host([data-score='3']) { --_color: var(--fx-color-info); }
|
|
2726
2746
|
:host([data-score='4']) { --_color: var(--fx-color-success); }
|
|
2727
|
-
`;let
|
|
2747
|
+
`;let fe=ht;function Nr(){return v("fx-password-strength",fe)}Nr();const pt=class pt extends b{static get observedAttributes(){return["marker","size","orientation"]}render(){this.setTemplate('<ol class="tl" part="timeline"></ol>'),this._decorate()}_decorate(){var a;const e=(a=this.shadowRoot)==null?void 0:a.querySelector("ol");if(!e)return;const t=this.getAttr("marker","●"),r=Array.from(this.querySelectorAll('[slot="item"]'));r.length&&(e.innerHTML=r.map(o=>{var f,_;const i=(f=o.getAttribute("time"))!=null?f:"",s=(_=o.getAttribute("title"))!=null?_:"",n=[i?`<span class="time">${h(i)}</span>`:"",s?`<span class="title">${h(s)}</span>`:""].join(""),l=o.getAttribute("icon");return`<li class="event" part="event">${l?`<span class="dot fx-icon" part="marker" aria-hidden="true">${h(l)}</span>`:`<span class="dot" part="marker" aria-hidden="true">${h(t)}</span>`}<div class="head">${n}</div><div class="content">${o.innerHTML}</div></li>`}).join(""),r.some(o=>o.hasAttribute("icon"))&&Promise.resolve().then(()=>I))}connectedCallback(){super.connectedCallback(),this._observer=new MutationObserver(()=>this._decorate()),this._observer.observe(this,{childList:!0,subtree:!1}),this._decorate()}disconnectedCallback(){var e;super.disconnectedCallback(),(e=this._observer)==null||e.disconnect(),this._observer=void 0}};pt.styles=m`
|
|
2728
2748
|
:host {
|
|
2729
2749
|
display: block;
|
|
2730
2750
|
font-family: var(--fx-font-family);
|
|
@@ -2827,7 +2847,7 @@
|
|
|
2827
2847
|
position: static;
|
|
2828
2848
|
margin-bottom: var(--fx-space-sm);
|
|
2829
2849
|
}
|
|
2830
|
-
`;let
|
|
2850
|
+
`;let _e=pt;function jr(){return v("fx-timeline",_e)}jr();const ut=class ut extends b{constructor(){super(...arguments),this._slides=[]}static get observedAttributes(){return["active","autoplay","loop","show-arrows","show-indicators"]}get active(){const e=Number(this.getAttr("active","0"));return Math.min(this.slideCount-1,Math.max(0,Number.isFinite(e)?e:0))}set active(e){this.setAttribute("active",String(Math.min(this.slideCount-1,Math.max(0,e))))}get slideCount(){return this._slides.length}render(){this._slides=Array.from(this.children).filter(t=>t.matches('[slot="slide"]'));const e=this._slides.map((t,r)=>`<div class="slide" part="slide" data-i="${r}" ${r===this.active?"":"hidden"}>${t.innerHTML}</div>`).join("");this.setTemplate(`
|
|
2831
2851
|
<div class="viewport" part="viewport">
|
|
2832
2852
|
${e}
|
|
2833
2853
|
<button type="button" class="arrow prev" part="arrow" aria-label="Anterior" ${this.hasAttr("show-arrows")?"":"hidden"}>‹</button>
|
|
@@ -2836,7 +2856,7 @@
|
|
|
2836
2856
|
<div class="indicators" part="indicators" ${this.hasAttr("show-indicators")?"":"hidden"}>
|
|
2837
2857
|
${this._slides.map((t,r)=>`<button type="button" class="dot ${r===this.active?"on":""}" data-i="${r}" aria-label="Slide ${r+1}"></button>`).join("")}
|
|
2838
2858
|
</div>
|
|
2839
|
-
`),this._bind(),this._restartAutoplay()}attributeChangedCallback(e,t,r){if(!(!this.isConnected||t===r)){if(e==="active"&&this._slides.length){this._go(this.active,!1),this._restartAutoplay();return}this.render()}}_go(e,t=!0){const r=this._slides.length;if(!r)return;let a;this.hasAttr("loop")?a=(e%r+r)%r:a=Math.min(r-1,Math.max(0,e)),String(a)!==this.getAttribute("active")&&(this.active=a,this.root.querySelectorAll(".slide").forEach(o=>{o.toggleAttribute("hidden",Number(o.dataset.i)!==a)}),this.root.querySelectorAll(".dot").forEach(o=>{o.classList.toggle("on",Number(o.dataset.i)===a)}),t&&this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{index:a}})))}next(){this._go(this.active+1)}prev(){this._go(this.active-1)}_bind(){var e,t;(e=this.root.querySelector(".arrow.prev"))==null||e.addEventListener("click",()=>this.prev()),(t=this.root.querySelector(".arrow.next"))==null||t.addEventListener("click",()=>this.next()),this.root.querySelectorAll(".dot").forEach(r=>{r.addEventListener("click",()=>this._go(Number(r.dataset.i)))})}_restartAutoplay(){this._timer&&(clearInterval(this._timer),this._timer=void 0);const e=Number(this.getAttr("autoplay","0"));e>0&&(this._timer=setInterval(()=>this._go(this.active+1),e))}disconnectedCallback(){super.disconnectedCallback(),this._timer&&(clearInterval(this._timer),this._timer=void 0)}};
|
|
2859
|
+
`),this._bind(),this._restartAutoplay()}attributeChangedCallback(e,t,r){if(!(!this.isConnected||t===r)){if(e==="active"&&this._slides.length){this._go(this.active,!1),this._restartAutoplay();return}this.render()}}_go(e,t=!0){const r=this._slides.length;if(!r)return;let a;this.hasAttr("loop")?a=(e%r+r)%r:a=Math.min(r-1,Math.max(0,e)),String(a)!==this.getAttribute("active")&&(this.active=a,this.root.querySelectorAll(".slide").forEach(o=>{o.toggleAttribute("hidden",Number(o.dataset.i)!==a)}),this.root.querySelectorAll(".dot").forEach(o=>{o.classList.toggle("on",Number(o.dataset.i)===a)}),t&&this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{index:a}})))}next(){this._go(this.active+1)}prev(){this._go(this.active-1)}_bind(){var e,t;(e=this.root.querySelector(".arrow.prev"))==null||e.addEventListener("click",()=>this.prev()),(t=this.root.querySelector(".arrow.next"))==null||t.addEventListener("click",()=>this.next()),this.root.querySelectorAll(".dot").forEach(r=>{r.addEventListener("click",()=>this._go(Number(r.dataset.i)))})}_restartAutoplay(){this._timer&&(clearInterval(this._timer),this._timer=void 0);const e=Number(this.getAttr("autoplay","0"));e>0&&(this._timer=setInterval(()=>this._go(this.active+1),e))}disconnectedCallback(){super.disconnectedCallback(),this._timer&&(clearInterval(this._timer),this._timer=void 0)}};ut.styles=m`
|
|
2840
2860
|
:host {
|
|
2841
2861
|
display: block;
|
|
2842
2862
|
font-family: var(--fx-font-family);
|
|
@@ -2904,7 +2924,7 @@
|
|
|
2904
2924
|
transition: background var(--fx-motion-duration-fast) var(--fx-motion-easing), width var(--fx-motion-duration-fast) var(--fx-motion-easing);
|
|
2905
2925
|
}
|
|
2906
2926
|
.dot.on { background: var(--fx-color-primary); width: 20px; }
|
|
2907
|
-
`;let
|
|
2927
|
+
`;let me=ut;function Fr(){return v("fx-carousel",me)}Fr();const ft=class ft extends b{constructor(){super(...arguments),this._expanded=new Set,this._selected=null}static get observedAttributes(){return["data","expand-all","size"]}render(){this.setTemplate(`<ul part="tree">${this._renderNodes(this.data,"")}</ul>`),this._bind()}_path(e,t){return t?`${t}.${e}`:`${e}`}_renderNodes(e,t){const r=this.hasAttr("expand-all");return e.map((a,o)=>{const i=this._path(o,t),s=Array.isArray(a.children)&&a.children.length>0,n=r||this._expanded.has(i),l=this._selected===i?" selected":"",p=s?`<ul class="children" ${n?"":"hidden"}>${this._renderNodes(a.children,i)}</ul>`:"";return`<li><span class="row${l}" data-path="${i}" role="treeitem" tabindex="0"><span class="caret ${s?n?"open":"":"leaf"}" data-toggle="${s?i:""}">▸</span>${a.icon?`<span class="icon">${h(a.icon)}</span>`:""}<span class="label">${h(a.label)}</span></span>${p}</li>`}).join("")}get data(){try{const e=JSON.parse(this.getAttr("data","[]"));return Array.isArray(e)?e:[]}catch(e){return[]}}set data(e){this.setAttribute("data",JSON.stringify(e))}_bind(){this.root.querySelectorAll(".caret[data-toggle]").forEach(e=>{const t=e.dataset.toggle;t&&e.addEventListener("click",r=>{r.stopPropagation(),this._toggle(t,e)})}),this.root.querySelectorAll(".row").forEach(e=>{var r;const t=(r=e.dataset.path)!=null?r:"";e.addEventListener("click",()=>{this._selected=t,this.root.querySelectorAll(".row").forEach(a=>a.classList.toggle("selected",a===e)),this.dispatchEvent(new CustomEvent("select",{bubbles:!0,composed:!0,detail:{node:this._findNode(t)}}))}),e.addEventListener("keydown",a=>{a.key==="Enter"&&e.click()})})}_toggle(e,t){var o;this._expanded.has(e)?this._expanded.delete(e):this._expanded.add(e);const r=this._expanded.has(e);t.classList.toggle("open",r);const a=t.closest("li");(o=a==null?void 0:a.querySelector(":scope > ul.children"))==null||o.toggleAttribute("hidden",!r)}_findNode(e){var a;let t=this.data,r;for(const o of e.split(".")){if(r=t[Number(o)],!r)return;t=(a=r.children)!=null?a:[]}return r}setAllExpanded(e){e?this.setAttribute("expand-all",""):(this.removeAttribute("expand-all"),this._expanded.clear()),this.render()}};ft.styles=m`
|
|
2908
2928
|
:host {
|
|
2909
2929
|
display: block;
|
|
2910
2930
|
font-family: var(--fx-font-family);
|
|
@@ -2946,7 +2966,7 @@
|
|
|
2946
2966
|
.children[hidden] { display: none; }
|
|
2947
2967
|
:host([size='sm']) .row { padding: 2px var(--fx-space-xs); font-size: calc(var(--fx-font-size) - 2px); }
|
|
2948
2968
|
:host([size='lg']) .row { padding: var(--fx-space-sm) var(--fx-space-md); font-size: calc(var(--fx-font-size) + 1px); }
|
|
2949
|
-
`;let
|
|
2969
|
+
`;let ge=ft;function Pr(){return v("fx-tree",ge)}Pr();const Ft={success:"var(--fx-color-success, #10b981)",error:"var(--fx-color-danger, #f43f5e)",info:"var(--fx-color-info, #0ea5e9)",warning:"var(--fx-color-warning, #f59e0b)"},Pt={success:"✓",error:"✕",warning:"!",info:"i"},Rr=`
|
|
2950
2970
|
:host { display: contents; pointer-events: auto; }
|
|
2951
2971
|
/* Modo explícito: sobrepõe os tokens herdados do tema global SOMENTE neste card. */
|
|
2952
2972
|
:host([mode='dark']) {
|
|
@@ -3010,8 +3030,8 @@
|
|
|
3010
3030
|
color: var(--fx-text-muted, #64748b); font-size: 15px; padding: 2px 4px; border-radius: 4px;
|
|
3011
3031
|
}
|
|
3012
3032
|
.close:hover { color: var(--fx-color-danger, #f43f5e); background: var(--fx-surface-surface-hover, rgba(0,0,0,.05)); }
|
|
3013
|
-
`;class
|
|
3014
|
-
<style>${
|
|
3033
|
+
`;class Vr extends HTMLElement{constructor(){super();Kt(this,N);this.timer=null,this.attachShadow({mode:"open"})}static get observedAttributes(){return["kind","title","message","duration","icon","mode"]}get mode(){const t=this.getAttribute("mode");return t==="light"||t==="dark"?t:void 0}set mode(t){t?this.setAttribute("mode",t):this.removeAttribute("mode")}connectedCallback(){var a;this.shadowRoot.firstChild||Xt(this,N,Yt).call(this);const t=Number((a=this.getAttribute("duration"))!=null?a:"4000"),r=t===0?0:Math.max(Number.isNaN(t)?4e3:t,1e3);!Number.isNaN(r)&&r>0&&!this.timer&&(this.timer=setTimeout(()=>this.dismiss(),r))}disconnectedCallback(){this.timer&&clearTimeout(this.timer),this.timer=null}dismiss(){this.timer&&clearTimeout(this.timer),this.timer=null;const t=this.shadowRoot.querySelector(".card");t?(t.classList.add("leaving"),setTimeout(()=>this.remove(),200)):this.remove()}}N=new WeakSet,Yt=function(){var f,_,c,g;const t=this.getAttribute("kind")||"info",r=(f=this.getAttribute("title"))!=null?f:"",a=(_=this.getAttribute("message"))!=null?_:"",o=(c=Ft[t])!=null?c:Ft.info,i=this.getAttribute("icon"),s=!!i&&/^[a-z][a-z0-9_]*$/.test(i);s&&Promise.resolve().then(()=>I);const n=s?i:(g=Pt[t])!=null?g:Pt.info;this.shadowRoot.innerHTML=`
|
|
3034
|
+
<style>${Rr}</style>
|
|
3015
3035
|
<div class="card" style="--kind:${o}" role="status" part="card">
|
|
3016
3036
|
<span class="icon${s?" fx-icon":""}">${n}</span>
|
|
3017
3037
|
<div class="body">
|
|
@@ -3019,10 +3039,10 @@
|
|
|
3019
3039
|
${a?'<div class="msg"></div>':""}
|
|
3020
3040
|
</div>
|
|
3021
3041
|
<button class="close" aria-label="Fechar">✕</button>
|
|
3022
|
-
</div>`;const l=this.shadowRoot.querySelector(".title"),p=this.shadowRoot.querySelector(".msg");l&&(l.textContent=r),p&&(p.textContent=a),this.shadowRoot.querySelector(".close").addEventListener("click",()=>this.dismiss())};function
|
|
3042
|
+
</div>`;const l=this.shadowRoot.querySelector(".title"),p=this.shadowRoot.querySelector(".msg");l&&(l.textContent=r),p&&(p.textContent=a),this.shadowRoot.querySelector(".close").addEventListener("click",()=>this.dismiss())};function Or(d){let e=document.querySelector(`[data-fx-toast-region="${d}"]`);if(!e){e=document.createElement("div"),e.setAttribute("data-fx-toast-region",d);const[t,r]=d.split("-"),a=e.style;a.position="fixed",a[t]="16px",r==="center"?(a.left="50%",a.transform="translateX(-50%)"):a[r]="16px",a.display="flex",a.flexDirection="column",a.gap="8px",a.zIndex="1100",a.pointerEvents="none",document.body.appendChild(e)}return e}class Br{constructor(){this.seq=0,this.map=new Map,this.success=(e,t,r)=>this.push("success",e,t,r),this.error=(e,t,r)=>this.push("error",e,t,r),this.info=(e,t,r)=>this.push("info",e,t,r),this.warning=(e,t,r)=>this.push("warning",e,t,r)}push(e,t,r,a){var l,p,f;const o=++this.seq,i=typeof r=="string"?r:r==null?void 0:r.message,s={...typeof r=="object"&&r?r:void 0,...a},n=document.createElement("fx-toast");return n.setAttribute("kind",e),n.setAttribute("title",t),i&&n.setAttribute("message",i),n.setAttribute("position",(l=s.position)!=null?l:"top-right"),n.setAttribute("duration",String((p=s.duration)!=null?p:4e3)),s.mode&&n.setAttribute("mode",s.mode),Or((f=s.position)!=null?f:"top-right").appendChild(n),this.map.set(o,n),o}close(e){var t;(t=this.map.get(e))==null||t.dismiss(),this.map.delete(e)}}const Hr=new Br;globalThis.FenixToast=Hr;function Kr(){customElements.get("fx-toast")||customElements.define("fx-toast",Vr)}Kr();const _t=class _t extends b{static get observedAttributes(){return["content","position"]}render(){const e=this.getAttr("content");this.setTemplate(`
|
|
3023
3043
|
<slot></slot>
|
|
3024
3044
|
<span class="bubble" part="bubble" role="tooltip">${h(e)}</span>
|
|
3025
|
-
`)}};
|
|
3045
|
+
`)}};_t.styles=m`
|
|
3026
3046
|
:host {
|
|
3027
3047
|
position: relative;
|
|
3028
3048
|
display: inline-flex;
|
|
@@ -3083,14 +3103,14 @@
|
|
|
3083
3103
|
top: 50%; left: auto; right: 100%; transform: translateY(-50%);
|
|
3084
3104
|
border: 5px solid transparent; border-right-color: var(--fx-text-default, #1e293b);
|
|
3085
3105
|
}
|
|
3086
|
-
`;let
|
|
3106
|
+
`;let be=_t;function Xr(){return v("fx-tooltip",be)}Xr();const mt=class mt extends b{static get observedAttributes(){return["value"]}get value(){return this.getAttr("value")}set value(e){this.setAttribute("value",e)}render(){var r;const e=Array.from(this.querySelectorAll("fx-tab")),t=this.value||((r=e[0])==null?void 0:r.getAttribute("tab"))||"";this.setTemplate(`
|
|
3087
3107
|
<div class="list" role="tablist">
|
|
3088
3108
|
${e.map(a=>{var s,n,l;const o=(s=a.getAttribute("tab"))!=null?s:"",i=a.hasAttribute("disabled");return`<button type="button" class="tab" role="tab" part="tab"
|
|
3089
3109
|
data-tab="${h(o)}" aria-selected="${o===t}"
|
|
3090
3110
|
${i?'aria-disabled="true" data-disabled="true"':""}>${h((l=(n=a.textContent)==null?void 0:n.trim())!=null?l:"")}</button>`}).join("")}
|
|
3091
3111
|
</div>
|
|
3092
3112
|
<slot></slot>
|
|
3093
|
-
`),this.panels.forEach(a=>{a.getAttribute("tab")===t?a.removeAttribute("hidden"):a.setAttribute("hidden","")}),this.root.querySelectorAll(".tab").forEach(a=>{a.addEventListener("click",()=>{var o;a.hasAttribute("data-disabled")||(this.value=(o=a.dataset.tab)!=null?o:"",this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:this.value}})))})})}get panels(){const e=Array.from(this.querySelectorAll("fx-tab-panel"));if(e.length)return e;const t=[];let r=this.nextElementSibling;for(;r&&!r.matches("fx-tabs");)r.matches("fx-tab-panel")?t.push(r):t.push(...Array.from(r.querySelectorAll(":scope > fx-tab-panel"))),r=r.nextElementSibling;return t}};
|
|
3113
|
+
`),this.panels.forEach(a=>{a.getAttribute("tab")===t?a.removeAttribute("hidden"):a.setAttribute("hidden","")}),this.root.querySelectorAll(".tab").forEach(a=>{a.addEventListener("click",()=>{var o;a.hasAttribute("data-disabled")||(this.value=(o=a.dataset.tab)!=null?o:"",this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:this.value}})))})})}get panels(){const e=Array.from(this.querySelectorAll("fx-tab-panel"));if(e.length)return e;const t=[];let r=this.nextElementSibling;for(;r&&!r.matches("fx-tabs");)r.matches("fx-tab-panel")?t.push(r):t.push(...Array.from(r.querySelectorAll(":scope > fx-tab-panel"))),r=r.nextElementSibling;return t}};mt.styles=m`
|
|
3094
3114
|
:host {
|
|
3095
3115
|
display: block;
|
|
3096
3116
|
font-family: var(--fx-font-family);
|
|
@@ -3141,10 +3161,10 @@
|
|
|
3141
3161
|
::slotted(fx-tab) {
|
|
3142
3162
|
display: none !important;
|
|
3143
3163
|
}
|
|
3144
|
-
`;let
|
|
3164
|
+
`;let ve=mt;const gt=class gt extends b{constructor(){super(...arguments),this._initialized=!1}static get observedAttributes(){return["tab"]}get tab(){return this.getAttr("tab")}set tab(e){this.setAttribute("tab",e)}get visible(){return!this.hasAttr("hidden")}set visible(e){this.toggleAttr("hidden",!e)}render(){var e;if(this.setTemplate("<slot></slot>"),!this._initialized){const t=(e=this.closest("fx-tabs"))!=null?e:(()=>{let a=this.previousElementSibling;for(;a;){if(a.matches("fx-tabs"))return a;a=a.previousElementSibling}return null})(),r=t&&t.getAttribute("value")||"";this.getAttribute("tab")!==r&&this.setAttribute("hidden",""),this._initialized=!0}}};gt.styles=m`
|
|
3145
3165
|
:host { display: block; padding: var(--fx-space-lg) 0; font-family: var(--fx-font-family); color: var(--fx-text-default); }
|
|
3146
3166
|
:host([hidden]) { display: none; }
|
|
3147
|
-
`;let
|
|
3167
|
+
`;let xe=gt;function Yr(){return v("fx-tabs",ve)}function Ur(){return v("fx-tab-panel",xe)}Yr(),Ur();const bt=class bt extends b{constructor(){super(...arguments),this._done=!1}static get observedAttributes(){return["value","indeterminate","variant","label","hide-label","size"]}get value(){return Number(this.getAttr("value","0"))||0}set value(e){this.setAttribute("value",String(Math.min(100,Math.max(0,e))))}render(){const e=Math.min(100,Math.max(0,this.value)),t=this.hasAttr("indeterminate"),r=this.getAttr("label"),a=!t&&!this.hasAttr("hide-label");this.setTemplate(`
|
|
3148
3168
|
${r?`<div class="caption" part="caption">${h(r)}</div>`:""}
|
|
3149
3169
|
<div class="row">
|
|
3150
3170
|
<div class="track" part="track" role="progressbar"
|
|
@@ -3153,7 +3173,7 @@
|
|
|
3153
3173
|
</div>
|
|
3154
3174
|
${a?`<span class="pct">${e}%</span>`:""}
|
|
3155
3175
|
</div>
|
|
3156
|
-
`),!this._done&&!this.hasAttr("indeterminate")&&e>=100&&(this._done=!0,this.dispatchEvent(new CustomEvent("complete",{bubbles:!0,composed:!0}))),e<100&&(this._done=!1)}};
|
|
3176
|
+
`),!this._done&&!this.hasAttr("indeterminate")&&e>=100&&(this._done=!0,this.dispatchEvent(new CustomEvent("complete",{bubbles:!0,composed:!0}))),e<100&&(this._done=!1)}};bt.styles=m`
|
|
3157
3177
|
:host {
|
|
3158
3178
|
display: block;
|
|
3159
3179
|
font-family: var(--fx-font-family);
|
|
@@ -3203,9 +3223,9 @@
|
|
|
3203
3223
|
color: var(--fx-text-muted);
|
|
3204
3224
|
margin-bottom: var(--fx-space-xs);
|
|
3205
3225
|
}
|
|
3206
|
-
`;let
|
|
3226
|
+
`;let ye=bt;function Jr(){return v("fx-progress",ye)}Jr();const vt=class vt extends b{static get observedAttributes(){return["variant","width","height","lines"]}safeSize(e){const t=e.trim();return/^-?\d*\.?\d+(px|em|rem|%|vw|vh|vmin|vmax|ch|ex|cm|mm|in|pt|pc)$/.test(t)?t:""}render(){const e=this.getAttr("variant","text"),t=this.safeSize(this.getAttr("width")),r=this.safeSize(this.getAttr("height")),a=`${t?`width:${t};`:""}${r?`height:${r};`:""}`;if(e==="circle"){const i=r||t||"40px",s=a.includes("height")?a:`width:${i};height:${i};`;this.setTemplate(`<div class="bone circle" part="bone" style="${s}"></div>`);return}if(e==="rect"){const i=a||"width:100%;height:80px;";this.setTemplate(`<div class="bone" part="bone" style="${i}"></div>`);return}const o=Number(this.getAttr("lines","3"))||3;this.setTemplate(`
|
|
3207
3227
|
${Array.from({length:o},()=>'<div class="bone text"></div>').join("")}
|
|
3208
|
-
`)}};
|
|
3228
|
+
`)}};vt.styles=m`
|
|
3209
3229
|
:host { display: block; width: 100%; min-width: 80px; font-family: var(--fx-font-family); }
|
|
3210
3230
|
.bone {
|
|
3211
3231
|
background: linear-gradient(
|
|
@@ -3223,7 +3243,7 @@
|
|
|
3223
3243
|
.text { height: 12px; width: 100%; margin-bottom: var(--fx-space-sm); }
|
|
3224
3244
|
.text:last-of-type { width: 60%; margin-bottom: 0; }
|
|
3225
3245
|
.circle { border-radius: var(--fx-radius-full); }
|
|
3226
|
-
`;let
|
|
3246
|
+
`;let we=vt;function Wr(){return v("fx-skeleton",we)}Wr();const xt=class xt extends b{static get observedAttributes(){return["variant","title","dismissible","icon"]}render(){var i,s;const e=this.getAttr("variant","info"),t=this.getAttr("title"),r=this.getAttr("icon");C(r)&&Promise.resolve().then(()=>I);const o=r?`<span class="icon${C(r)?" fx-icon":""}" part="icon" aria-hidden="true">${h(r)}</span>`:`<span class="icon">${(i={info:"ℹ",success:"✓",warning:"⚠",danger:"✕"}[e])!=null?i:"ℹ"}</span>`;this.setTemplate(`
|
|
3227
3247
|
<div class="alert" part="alert" role="alert">
|
|
3228
3248
|
${o}
|
|
3229
3249
|
<div class="content">
|
|
@@ -3232,7 +3252,7 @@
|
|
|
3232
3252
|
</div>
|
|
3233
3253
|
${this.hasAttr("dismissible")?'<button type="button" class="close" aria-label="Fechar">×</button>':""}
|
|
3234
3254
|
</div>
|
|
3235
|
-
`),(s=this.root.querySelector(".close"))==null||s.addEventListener("click",()=>{this.hidden=!0,this.dispatchEvent(new CustomEvent("dismiss",{bubbles:!0,composed:!0}))})}};
|
|
3255
|
+
`),(s=this.root.querySelector(".close"))==null||s.addEventListener("click",()=>{this.hidden=!0,this.dispatchEvent(new CustomEvent("dismiss",{bubbles:!0,composed:!0}))})}};xt.styles=m`
|
|
3236
3256
|
:host {
|
|
3237
3257
|
display: block;
|
|
3238
3258
|
font-family: var(--fx-font-family);
|
|
@@ -3267,7 +3287,7 @@
|
|
|
3267
3287
|
line-height: 1; padding: 0; border-radius: var(--fx-radius-full);
|
|
3268
3288
|
}
|
|
3269
3289
|
.close:hover { color: var(--_color); }
|
|
3270
|
-
`;let
|
|
3290
|
+
`;let ke=xt;function Gr(){return v("fx-alert",ke)}Gr();const yt=class yt extends b{constructor(){super(...arguments),this._listenersAttached=!1}static get observedAttributes(){return["label","position","open"]}get open(){return this.hasAttr("open")}set open(e){this.toggleAttr("open",e)}render(){const e=this.getAttr("label","Ações"),t=Array.from(this.querySelectorAll("fx-dropdown-item"));this.setTemplate(`
|
|
3271
3291
|
<span class="trigger" role="button" tabindex="0" part="trigger"
|
|
3272
3292
|
aria-haspopup="menu" aria-expanded="${this.open}">
|
|
3273
3293
|
${h(e)} ▾
|
|
@@ -3276,7 +3296,7 @@
|
|
|
3276
3296
|
${t.length?"":'<div class="empty">Nenhuma ação</div>'}
|
|
3277
3297
|
<slot></slot>
|
|
3278
3298
|
</div>
|
|
3279
|
-
`);const r=this.root.querySelector(".trigger");r==null||r.addEventListener("click",a=>{a.stopPropagation(),document.querySelectorAll("fx-dropdown[open]").forEach(o=>{o!==this&&(o.open=!1)}),this.open=!this.open}),r==null||r.addEventListener("keydown",a=>{a.key==="Enter"||a.key===" "?(a.preventDefault(),this.open=!this.open):a.key==="Escape"&&(this.open=!1)}),this._attachDelegatedListeners()}_attachDelegatedListeners(){this._listenersAttached||(this._listenersAttached=!0,this.addEventListener("click",e=>{var r;const t=e.composedPath().find(a=>{var o;return((o=a.tagName)==null?void 0:o.toLowerCase())==="fx-dropdown-item"});t&&(this.open=!1,this.dispatchEvent(new CustomEvent("select",{bubbles:!0,composed:!0,detail:{value:(r=t.getAttribute("value"))!=null?r:""}})))}),this.docListener=e=>{this.contains(e.target)||(this.open=!1)},document.addEventListener("click",this.docListener))}disconnectedCallback(){super.disconnectedCallback(),this.docListener&&document.removeEventListener("click",this.docListener),this.docListener=void 0}};
|
|
3299
|
+
`);const r=this.root.querySelector(".trigger");r==null||r.addEventListener("click",a=>{a.stopPropagation(),document.querySelectorAll("fx-dropdown[open]").forEach(o=>{o!==this&&(o.open=!1)}),this.open=!this.open}),r==null||r.addEventListener("keydown",a=>{a.key==="Enter"||a.key===" "?(a.preventDefault(),this.open=!this.open):a.key==="Escape"&&(this.open=!1)}),this._attachDelegatedListeners()}_attachDelegatedListeners(){this._listenersAttached||(this._listenersAttached=!0,this.addEventListener("click",e=>{var r;const t=e.composedPath().find(a=>{var o;return((o=a.tagName)==null?void 0:o.toLowerCase())==="fx-dropdown-item"});t&&(this.open=!1,this.dispatchEvent(new CustomEvent("select",{bubbles:!0,composed:!0,detail:{value:(r=t.getAttribute("value"))!=null?r:""}})))}),this.docListener=e=>{this.contains(e.target)||(this.open=!1)},document.addEventListener("click",this.docListener))}disconnectedCallback(){super.disconnectedCallback(),this.docListener&&document.removeEventListener("click",this.docListener),this.docListener=void 0}};yt.styles=m`
|
|
3280
3300
|
:host {
|
|
3281
3301
|
position: relative;
|
|
3282
3302
|
display: inline-block;
|
|
@@ -3309,7 +3329,7 @@
|
|
|
3309
3329
|
:host(:not([position])) .panel { left: 0; right: auto; }
|
|
3310
3330
|
::slotted(fx-dropdown-item) { display: block; }
|
|
3311
3331
|
.empty { color: var(--fx-text-muted); font-size: calc(var(--fx-font-size) - 2px); padding: var(--fx-space-sm); }
|
|
3312
|
-
`;let
|
|
3332
|
+
`;let Ae=yt;const wt=class wt extends b{static get observedAttributes(){return["value"]}get value(){return this.getAttr("value")}set value(e){this.setAttribute("value",e)}render(){this.setTemplate('<button type="button" class="item" part="item" role="menuitem"><slot></slot></button>')}};wt.styles=m`
|
|
3313
3333
|
:host {
|
|
3314
3334
|
display: block;
|
|
3315
3335
|
font-family: var(--fx-font-family);
|
|
@@ -3330,13 +3350,13 @@
|
|
|
3330
3350
|
transition: background var(--fx-motion-duration-fast) var(--fx-motion-easing);
|
|
3331
3351
|
}
|
|
3332
3352
|
.item:hover { background: color-mix(in srgb, var(--fx-color-primary) 12%, var(--fx-surface-background)); color: var(--fx-color-primary); }
|
|
3333
|
-
`;let
|
|
3353
|
+
`;let ze=wt;function Zr(){return v("fx-dropdown",Ae)}function Qr(){return v("fx-dropdown-item",ze)}Zr(),Qr();const kt=class kt extends b{constructor(){super(...arguments),this._onKeydown=()=>{},this._previouslyFocused=null,this._close=()=>{this.open&&(this.open=!1,this._restoreFocus(),this.dispatchEvent(new CustomEvent("close",{bubbles:!0,composed:!0})))}}static get observedAttributes(){return["open","title","position"]}get open(){return this.hasAttr("open")}set open(e){this.toggleAttr("open",e)}get title(){return this.getAttr("title")}set title(e){this.setAttribute("title",e)}get position(){const e=this.getAttr("position");return["left","right","top","bottom"].includes(e)?e:"right"}set position(e){this.setAttribute("position",e)}render(){var t,r;const e=this.getAttr("title");this.setTemplate(`
|
|
3334
3354
|
<div class="overlay" part="overlay"></div>
|
|
3335
3355
|
<div class="panel" part="panel" role="dialog" aria-modal="true" aria-label="${h(e||"Drawer")}" tabindex="-1">
|
|
3336
3356
|
${e!==""?`<div class="header" part="header"><span class="title">${h(e)}</span><button type="button" class="close" part="close" aria-label="Fechar">✕</button></div>`:""}
|
|
3337
3357
|
<div class="body" part="body"><slot></slot></div>
|
|
3338
3358
|
</div>
|
|
3339
|
-
`),(t=this.root.querySelector(".overlay"))==null||t.addEventListener("click",this._close),(r=this.root.querySelector(".close"))==null||r.addEventListener("click",this._close),this.open&&requestAnimationFrame(()=>{var a;this._previouslyFocused===null&&(this._previouslyFocused=document.activeElement),(a=this.root.querySelector(".panel"))==null||a.focus()})}connectedCallback(){var e;(e=super.connectedCallback)==null||e.call(this),this._onKeydown=t=>{t.key==="Escape"&&this.open?this._close():t.key==="Tab"&&this.open&&this._trapFocus(t)},document.addEventListener("keydown",this._onKeydown)}disconnectedCallback(){var e;document.removeEventListener("keydown",this._onKeydown),this._restoreFocus(),(e=super.disconnectedCallback)==null||e.call(this)}_trapFocus(e){const t=this.root.querySelector(".panel");if(!t)return;const r=t.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(!r.length)return;const a=r[0],o=r[r.length-1],i=this.root.activeElement;e.shiftKey&&(i===a||i===t)?(e.preventDefault(),o.focus()):!e.shiftKey&&i===o&&(e.preventDefault(),a.focus())}_restoreFocus(){var e;(e=this._previouslyFocused)!=null&&e.isConnected&&this._previouslyFocused.focus(),this._previouslyFocused=null}};
|
|
3359
|
+
`),(t=this.root.querySelector(".overlay"))==null||t.addEventListener("click",this._close),(r=this.root.querySelector(".close"))==null||r.addEventListener("click",this._close),this.open&&requestAnimationFrame(()=>{var a;this._previouslyFocused===null&&(this._previouslyFocused=document.activeElement),(a=this.root.querySelector(".panel"))==null||a.focus()})}connectedCallback(){var e;(e=super.connectedCallback)==null||e.call(this),this._onKeydown=t=>{t.key==="Escape"&&this.open?this._close():t.key==="Tab"&&this.open&&this._trapFocus(t)},document.addEventListener("keydown",this._onKeydown)}disconnectedCallback(){var e;document.removeEventListener("keydown",this._onKeydown),this._restoreFocus(),(e=super.disconnectedCallback)==null||e.call(this)}_trapFocus(e){const t=this.root.querySelector(".panel");if(!t)return;const r=t.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(!r.length)return;const a=r[0],o=r[r.length-1],i=this.root.activeElement;e.shiftKey&&(i===a||i===t)?(e.preventDefault(),o.focus()):!e.shiftKey&&i===o&&(e.preventDefault(),a.focus())}_restoreFocus(){var e;(e=this._previouslyFocused)!=null&&e.isConnected&&this._previouslyFocused.focus(),this._previouslyFocused=null}};kt.styles=m`
|
|
3340
3360
|
:host {
|
|
3341
3361
|
display: contents;
|
|
3342
3362
|
font-family: var(--fx-font-family);
|
|
@@ -3454,7 +3474,7 @@
|
|
|
3454
3474
|
padding: var(--fx-space-md);
|
|
3455
3475
|
flex: 1;
|
|
3456
3476
|
}
|
|
3457
|
-
`;let
|
|
3477
|
+
`;let Se=kt;function ea(){return v("fx-drawer",Se)}ea();const At=class At extends b{static get observedAttributes(){return["page","total","rows","rows-options","position"]}get page(){return Number(this.getAttr("page","1"))||1}set page(e){this.setAttribute("page",String(e))}get total(){return Number(this.getAttr("total","0"))||0}set total(e){this.setAttribute("total",String(e))}get rows(){return Number(this.getAttr("rows","10"))||10}set rows(e){this.setAttribute("rows",String(e))}get pages(){return Math.max(1,Math.ceil(this.total/this.rows))}render(){const e=this.pages,t=Math.min(Math.max(1,this.page),e),r=(this.getAttr("rows-options","5,10,20,50")||"").split(",").map(l=>l.trim()).filter(Boolean),a=[];for(let l=Math.max(1,t-2);l<=Math.min(e,t+2);l++)a.push(l);const o=s(t,this.rows),i=Math.min(t*this.rows,this.total);this.setTemplate(`
|
|
3458
3478
|
<span class="info">${this.total?`${o}-${i} de ${this.total}`:"0 itens"}</span>
|
|
3459
3479
|
<button type="button" class="nav" part="prev" data-go="${t-1}" ${t<=1?"disabled":""}>‹</button>
|
|
3460
3480
|
${a[0]!==1&&e>5?'<button type="button" class="nav" data-go="1">1</button>':""}
|
|
@@ -3465,7 +3485,7 @@
|
|
|
3465
3485
|
<fx-select class="rows-sel" part="rows" size="sm" value="${this.rows}" aria-label="Itens por página">
|
|
3466
3486
|
${r.map(l=>`<option value="${h(l)}">${h(l)}</option>`).join("")}
|
|
3467
3487
|
</fx-select>`:""}
|
|
3468
|
-
`);function s(l,p){return(l-1)*p+1}this.root.querySelectorAll(".nav[data-go]").forEach(l=>{l.addEventListener("click",()=>{const p=Number(l.dataset.go);p>=1&&p<=e&&p!==t&&(this.page=p,this.emit())})});const n=this.root.querySelector("fx-select.rows-sel");n==null||n.addEventListener("change",l=>{var f;const p=Number((f=l.detail)==null?void 0:f.value);!p||p===this.rows||(this.rows=p,this.page=1,this.emit())})}emit(){this.dispatchEvent(new CustomEvent("page-change",{bubbles:!0,composed:!0,detail:{page:this.page,rows:this.rows}}))}};
|
|
3488
|
+
`);function s(l,p){return(l-1)*p+1}this.root.querySelectorAll(".nav[data-go]").forEach(l=>{l.addEventListener("click",()=>{const p=Number(l.dataset.go);p>=1&&p<=e&&p!==t&&(this.page=p,this.emit())})});const n=this.root.querySelector("fx-select.rows-sel");n==null||n.addEventListener("change",l=>{var f;const p=Number((f=l.detail)==null?void 0:f.value);!p||p===this.rows||(this.rows=p,this.page=1,this.emit())})}emit(){this.dispatchEvent(new CustomEvent("page-change",{bubbles:!0,composed:!0,detail:{page:this.page,rows:this.rows}}))}};At.styles=m`
|
|
3469
3489
|
:host {
|
|
3470
3490
|
display: flex;
|
|
3471
3491
|
align-items: center;
|
|
@@ -3508,11 +3528,11 @@
|
|
|
3508
3528
|
border-radius: var(--fx-radius-sm) !important;
|
|
3509
3529
|
font-size: calc(var(--fx-font-size) - 2px) !important;
|
|
3510
3530
|
}
|
|
3511
|
-
`;let
|
|
3531
|
+
`;let $e=At;function ta(){return v("fx-pagination",$e)}ta();const zt=class zt extends b{static get observedAttributes(){return["size","placeholder","source","disabled","min-chars","error","invalid","success","valid"]}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}get value(){return this.getAttr("value")}set value(e){this.setAttribute("value",e)}get source(){try{const e=JSON.parse(this.getAttr("source","[]"));return Array.isArray(e)?e.map(String):[]}catch(e){return[]}}set source(e){this.setAttribute("source",typeof e=="string"?e:JSON.stringify(e))}connectedCallback(){super.connectedCallback(),this.docListener=e=>{this.contains(e.target)||this.toggleAttr("open",!1)},document.addEventListener("click",this.docListener)}disconnectedCallback(){super.disconnectedCallback(),this.docListener&&document.removeEventListener("click",this.docListener),this.docListener=void 0}render(){const e=this.getAttr("placeholder");this.setTemplate(`
|
|
3512
3532
|
<input class="field" part="input" type="text"
|
|
3513
3533
|
${e?`placeholder="${h(e)}"`:""} autocomplete="off"/>
|
|
3514
3534
|
<div class="list" part="list" role="listbox"></div>
|
|
3515
|
-
`);const t=this.root.querySelector(".field");if(!t)return;t.value=this.value,this.hasAttr("disabled")&&t.setAttribute("disabled","");const r=this.root.querySelector(".list"),a=Number(this.getAttr("min-chars","1"))||1,o=()=>{if(!r)return;const i=t.value.toLowerCase(),s=this.source.filter(n=>n.toLowerCase().includes(i)).slice(0,8);r.innerHTML=s.length?s.map(n=>`<button type="button" class="opt" role="option" data-v="${h(n)}">${h(n)}</button>`).join(""):'<div class="empty">Nenhum resultado</div>',r.querySelectorAll(".opt").forEach(n=>{n.addEventListener("click",()=>{var l;t.value=(l=n.dataset.v)!=null?l:"",this.value=t.value,this.toggleAttr("open",!1),this.dispatchEvent(new CustomEvent("select",{bubbles:!0,composed:!0,detail:{value:this.value}}))})}),this.toggleAttr("open",!0)};t.addEventListener("input",()=>{this.value=t.value,o()}),t.addEventListener("focus",()=>{t.value.length>=a&&o()}),t.addEventListener("keydown",i=>{var p;if(i.key==="Escape"){this.toggleAttr("open",!1);return}if(i.key!=="ArrowDown"&&i.key!=="ArrowUp")return;i.preventDefault(),this.hasAttr("open")||o();const s=Array.from(this.root.querySelectorAll(".opt"));if(!s.length)return;const n=s.indexOf(this.root.activeElement),l=i.key==="ArrowDown"?n===-1?0:Math.min(n+1,s.length-1):n===-1?s.length-1:Math.max(n-1,0);(p=s[l])==null||p.focus()})}};
|
|
3535
|
+
`);const t=this.root.querySelector(".field");if(!t)return;t.value=this.value,this.hasAttr("disabled")&&t.setAttribute("disabled","");const r=this.root.querySelector(".list"),a=Number(this.getAttr("min-chars","1"))||1,o=()=>{if(!r)return;const i=t.value.toLowerCase(),s=this.source.filter(n=>n.toLowerCase().includes(i)).slice(0,8);r.innerHTML=s.length?s.map(n=>`<button type="button" class="opt" role="option" data-v="${h(n)}">${h(n)}</button>`).join(""):'<div class="empty">Nenhum resultado</div>',r.querySelectorAll(".opt").forEach(n=>{n.addEventListener("click",()=>{var l;t.value=(l=n.dataset.v)!=null?l:"",this.value=t.value,this.toggleAttr("open",!1),this.dispatchEvent(new CustomEvent("select",{bubbles:!0,composed:!0,detail:{value:this.value}}))})}),this.toggleAttr("open",!0)};t.addEventListener("input",()=>{this.value=t.value,o()}),t.addEventListener("focus",()=>{t.value.length>=a&&o()}),t.addEventListener("keydown",i=>{var p;if(i.key==="Escape"){this.toggleAttr("open",!1);return}if(i.key!=="ArrowDown"&&i.key!=="ArrowUp")return;i.preventDefault(),this.hasAttr("open")||o();const s=Array.from(this.root.querySelectorAll(".opt"));if(!s.length)return;const n=s.indexOf(this.root.activeElement),l=i.key==="ArrowDown"?n===-1?0:Math.min(n+1,s.length-1):n===-1?s.length-1:Math.max(n-1,0);(p=s[l])==null||p.focus()})}};zt.styles=m`
|
|
3516
3536
|
:host {
|
|
3517
3537
|
position: relative;
|
|
3518
3538
|
display: inline-block;
|
|
@@ -3597,7 +3617,7 @@
|
|
|
3597
3617
|
}
|
|
3598
3618
|
.opt:hover { background: color-mix(in srgb, var(--fx-color-primary) 12%, var(--fx-surface-background)); color: var(--fx-color-primary); }
|
|
3599
3619
|
.empty { color: var(--fx-text-muted); font-size: calc(var(--fx-font-size) - 2px); padding: var(--fx-space-sm) var(--fx-space-md); }
|
|
3600
|
-
`;let
|
|
3620
|
+
`;let Ee=zt;function ra(){return v("fx-autocomplete",Ee)}ra();const St=class St extends b{constructor(){super(...arguments),this._isDragging=!1,this._startY=0,this._startValue=0,this._onMouseMove=e=>{if(!this._isDragging)return;const t=this._startY-e.clientY,r=(this.max-this.min)/100;this.emitChange(this._startValue+t*r)},this._onMouseUp=()=>{this._isDragging=!1,document.removeEventListener("mousemove",this._onMouseMove),document.removeEventListener("mouseup",this._onMouseUp)}}static get observedAttributes(){return["value","min","max","step","size","stroke-width","value-color","range-color","readonly","disabled","value-template"]}get value(){return this.clampValue(Number(this.getAttr("value","0"))||0)}set value(e){if(this.readonly||this.disabled)return;const t=this.clampValue(e),r=this.clampValue(Number(this.getAttr("value","0"))||0);t!==r&&(this.setAttribute("value",String(t)),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:t}})))}get min(){return Number(this.getAttr("min","0"))||0}set min(e){this.setAttribute("min",String(e))}get max(){return Number(this.getAttr("max","100"))||100}set max(e){this.setAttribute("max",String(e))}get step(){return Number(this.getAttr("step","1"))||1}set step(e){this.setAttribute("step",String(e))}get size(){const e=this.getAttr("size","md");return e==="sm"||e==="lg"?e:"md"}set size(e){this.setAttribute("size",e)}get strokeWidth(){return Number(this.getAttr("stroke-width","8"))||8}set strokeWidth(e){this.setAttribute("stroke-width",String(e))}get valueColor(){return this.getAttr("value-color","")}set valueColor(e){this.setAttribute("value-color",e)}get rangeColor(){return this.getAttr("range-color","")}set rangeColor(e){this.setAttribute("range-color",e)}get readonly(){return this.hasAttr("readonly")}set readonly(e){this.toggleAttr("readonly",!!e)}get disabled(){return this.hasAttr("disabled")}set disabled(e){this.toggleAttr("disabled",!!e)}get valueTemplate(){return this.getAttr("value-template","{value}")}set valueTemplate(e){this.setAttribute("value-template",e)}render(){const e=this.min,t=this.max,r=this.clampValue(this.value),a=t-e,o=a>0?(r-e)/a:0,i=this.getSizeNum(),s=this.strokeWidth,n=(i-s)/2,l=2*Math.PI*n,p=l*(1-o),f=this.valueColor?this.safeColor(this.valueColor):"",_=this.rangeColor?this.safeColor(this.rangeColor):"",c=f?`--_value-color: ${f};`:"",g=_?`--_range-color: ${_};`:"",u=this.valueTemplate.replace("{value}",String(Math.round(r)));this.setTemplate(`
|
|
3601
3621
|
<div class="knob" part="knob" tabindex="${this.disabled?"-1":"0"}"
|
|
3602
3622
|
role="slider" aria-valuenow="${r}" aria-valuemin="${e}" aria-valuemax="${t}"
|
|
3603
3623
|
aria-readonly="${this.readonly}" aria-disabled="${this.disabled}"
|
|
@@ -3612,7 +3632,7 @@
|
|
|
3612
3632
|
</svg>
|
|
3613
3633
|
<div class="label" part="label">${h(u)}</div>
|
|
3614
3634
|
</div>
|
|
3615
|
-
`),this.attachListeners()}getSizeNum(){const e=this.size;return e==="sm"?60:e==="lg"?140:100}safeColor(e){const t=e.trim();return/^#[0-9a-fA-F]{3,8}$/.test(t)||/^(rgb|rgba|hsl|hsla)\([\d\s.,%()]+\)$/i.test(t)||/^var\(--[\w-]+(,\s*[^)]*)?\)$/.test(t)||/^[a-zA-Z]+$/.test(t)?t:""}clampValue(e){const t=this.min,r=this.max,a=this.step;let o=Math.min(r,Math.max(t,e));return a>0&&(o=Math.round((o-t)/a)*a+t,o=Math.min(r,Math.max(t,o))),o}emitChange(e){const t=this.clampValue(e);t!==this.value&&(this.value=t,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:t}})))}attachListeners(){const e=this.root.querySelector(".knob");e&&(e.addEventListener("mousedown",t=>{this.readonly||this.disabled||(t.preventDefault(),this._isDragging=!0,this._startY=t.clientY,this._startValue=this.value,e.focus(),document.addEventListener("mousemove",this._onMouseMove),document.addEventListener("mouseup",this._onMouseUp))}),e.addEventListener("touchstart",t=>{this.readonly||this.disabled||(t.preventDefault(),this._isDragging=!0,this._startY=t.touches[0].clientY,this._startValue=this.value,e.focus())},{passive:!1}),e.addEventListener("touchmove",t=>{if(!this._isDragging||this.readonly||this.disabled)return;t.preventDefault();const r=this._startY-t.touches[0].clientY,a=(this.max-this.min)/100;this.emitChange(this._startValue+r*a)},{passive:!1}),e.addEventListener("touchend",()=>{this._isDragging=!1}),e.addEventListener("keydown",t=>{if(this.readonly||this.disabled)return;const r=this.step;switch(t.key){case"ArrowUp":case"ArrowRight":t.preventDefault(),this.emitChange(this.value+r);break;case"ArrowDown":case"ArrowLeft":t.preventDefault(),this.emitChange(this.value-r);break;case"Home":t.preventDefault(),this.emitChange(this.min);break;case"End":t.preventDefault(),this.emitChange(this.max);break;case"PageUp":t.preventDefault(),this.emitChange(this.value+r*10);break;case"PageDown":t.preventDefault(),this.emitChange(this.value-r*10);break}}))}disconnectedCallback(){document.removeEventListener("mousemove",this._onMouseMove),document.removeEventListener("mouseup",this._onMouseUp),super.disconnectedCallback()}};
|
|
3635
|
+
`),this.attachListeners()}getSizeNum(){const e=this.size;return e==="sm"?60:e==="lg"?140:100}safeColor(e){const t=e.trim();return/^#[0-9a-fA-F]{3,8}$/.test(t)||/^(rgb|rgba|hsl|hsla)\([\d\s.,%()]+\)$/i.test(t)||/^var\(--[\w-]+(,\s*[^)]*)?\)$/.test(t)||/^[a-zA-Z]+$/.test(t)?t:""}clampValue(e){const t=this.min,r=this.max,a=this.step;let o=Math.min(r,Math.max(t,e));return a>0&&(o=Math.round((o-t)/a)*a+t,o=Math.min(r,Math.max(t,o))),o}emitChange(e){const t=this.clampValue(e);t!==this.value&&(this.value=t,this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:t}})))}attachListeners(){const e=this.root.querySelector(".knob");e&&(e.addEventListener("mousedown",t=>{this.readonly||this.disabled||(t.preventDefault(),this._isDragging=!0,this._startY=t.clientY,this._startValue=this.value,e.focus(),document.addEventListener("mousemove",this._onMouseMove),document.addEventListener("mouseup",this._onMouseUp))}),e.addEventListener("touchstart",t=>{this.readonly||this.disabled||(t.preventDefault(),this._isDragging=!0,this._startY=t.touches[0].clientY,this._startValue=this.value,e.focus())},{passive:!1}),e.addEventListener("touchmove",t=>{if(!this._isDragging||this.readonly||this.disabled)return;t.preventDefault();const r=this._startY-t.touches[0].clientY,a=(this.max-this.min)/100;this.emitChange(this._startValue+r*a)},{passive:!1}),e.addEventListener("touchend",()=>{this._isDragging=!1}),e.addEventListener("keydown",t=>{if(this.readonly||this.disabled)return;const r=this.step;switch(t.key){case"ArrowUp":case"ArrowRight":t.preventDefault(),this.emitChange(this.value+r);break;case"ArrowDown":case"ArrowLeft":t.preventDefault(),this.emitChange(this.value-r);break;case"Home":t.preventDefault(),this.emitChange(this.min);break;case"End":t.preventDefault(),this.emitChange(this.max);break;case"PageUp":t.preventDefault(),this.emitChange(this.value+r*10);break;case"PageDown":t.preventDefault(),this.emitChange(this.value-r*10);break}}))}disconnectedCallback(){document.removeEventListener("mousemove",this._onMouseMove),document.removeEventListener("mouseup",this._onMouseUp),super.disconnectedCallback()}};St.styles=m`
|
|
3616
3636
|
:host {
|
|
3617
3637
|
display: inline-flex;
|
|
3618
3638
|
align-items: center;
|
|
@@ -3680,7 +3700,7 @@
|
|
|
3680
3700
|
effect.focus-ring desligado) não há anel de foco. */
|
|
3681
3701
|
filter: drop-shadow(var(--fx-effect-focus-ring, none));
|
|
3682
3702
|
}
|
|
3683
|
-
`;let
|
|
3703
|
+
`;let Ce=St;function aa(){return v("fx-knob",Ce)}aa();const $t=class $t extends b{constructor(){super(...arguments),this._data=[],this._filteredData=null,this._selection=[],this._filterValue="",this._draggedIndex=null,this._listenersAttached=!1,this._optionTemplate=null}static get observedAttributes(){return["data","data-key","filter","filter-by","filter-placeholder","breakpoint","controls-location","dragdrop","striped","selection-mode","show-select-all"]}set data(e){this._data=e,this._filteredData=null,this.render()}get data(){return this._data}set selection(e){this._selection=e,this.render()}get selection(){return this._selection}get dataKey(){return this.getAttr("data-key","")}set dataKey(e){this.setAttribute("data-key",e)}get filter(){return this.hasAttr("filter")}set filter(e){this.toggleAttr("filter",e)}get filterBy(){return this.getAttr("filter-by","label")}set filterBy(e){this.setAttribute("filter-by",e)}get filterPlaceholder(){return this.getAttr("filter-placeholder","Buscar...")}set filterPlaceholder(e){this.setAttribute("filter-placeholder",e)}get breakpoint(){return this.getAttr("breakpoint","960px")}set breakpoint(e){this.setAttribute("breakpoint",e)}get dragdrop(){return this.hasAttr("dragdrop")}set dragdrop(e){this.toggleAttr("dragdrop",e)}get striped(){return this.hasAttr("striped")}set striped(e){this.toggleAttr("striped",e)}get selectionMode(){const e=this.getAttr("selection-mode","");return e==="single"||e==="multiple"?e:""}set selectionMode(e){this.setAttribute("selection-mode",e)}get showSelectAll(){return this.hasAttr("show-select-all")}set showSelectAll(e){this.toggleAttr("show-select-all",e)}get filterValue(){return this._filterValue}set filterValue(e){this._filterValue=e,this._applyFilter(),this._updateListDisplay()}setOptionTemplate(e){this._optionTemplate=e,this.render()}connectedCallback(){this._parseDataAttribute(),super.connectedCallback()}attributeChangedCallback(e,t,r){this.getAttr("data","")!==""&&this._parseDataAttribute(),super.attributeChangedCallback(e,t,r)}_parseDataAttribute(){const e=this.getAttr("data","");if(e)try{this._data=JSON.parse(e),this._filteredData=null}catch(t){this._data=[]}}_applyFilter(){if(!this._filterValue){this._filteredData=null;return}const e=this.filterBy.split(",").map(t=>t.trim());this._filteredData=this._data.filter(t=>e.some(r=>{const a=t[r];return a==null?!1:String(a).toLowerCase().includes(this._filterValue.toLowerCase())}))}_getDisplayData(){return this._filteredData||this._data}_getItemKey(e,t){return this.dataKey&&e[this.dataKey]!=null?String(e[this.dataKey]):e.id!=null?String(e.id):e.key!=null?String(e.key):e.label!=null?String(e.label):e.name!=null?String(e.name):e.value!=null?String(e.value):String(t)}_getItemLabel(e){const t=["label","name","title","text","value"];for(const r of t)if(e[r]!=null)return String(e[r]);return JSON.stringify(e)}_isSelected(e){return this._selection.some(t=>this._getItemKey(t,-1)===this._getItemKey(e,-1))}_moveItem(e,t){const r=this._getActualIndex(e),a=this._getActualIndex(t);if(r===-1||a===-1)return;const o=this._data.splice(r,1)[0];this._data.splice(a,0,o),this._applyFilter(),this._updateListDisplay(),this._updateControlsState(),this._emitReorder()}_getActualIndex(e){if(this._filteredData){const t=this._filteredData[e];return this._data.findIndex(r=>this._getItemKey(r,-1)===this._getItemKey(t,-1))}return e}_emitReorder(){this.dispatchEvent(new CustomEvent("reorder",{bubbles:!0,composed:!0,detail:{items:[...this._data]}}))}_emitSelectionChange(){this.dispatchEvent(new CustomEvent("selection-change",{bubbles:!0,composed:!0,detail:{selection:[...this._selection]}}))}_toggleSelection(e){const t=this._getItemKey(e,-1),r=this._selection.findIndex(a=>this._getItemKey(a,-1)===t);r>=0?this._selection.splice(r,1):this.selectionMode==="multiple"?this._selection.push(e):this._selection=[e],this._emitSelectionChange(),this._updateListDisplay(),this._updateControlsState()}_selectAll(){const e=this._getDisplayData();this._selection=[...e],this._emitSelectionChange(),this._updateListDisplay(),this._updateControlsState()}_deselectAll(){this._selection=[],this._emitSelectionChange(),this._updateListDisplay(),this._updateControlsState()}_toggleSelectAll(){const e=this._getDisplayData();this._selection.length===e.length?this._deselectAll():this._selectAll()}render(){const e=this._getDisplayData(),t=this.selectionMode,r=this.selectionMode==="multiple",a=r&&e.length>0&&this._selection.length===e.length;this.setTemplate(`
|
|
3684
3704
|
<div class="container" part="container">
|
|
3685
3705
|
${this.filter?`
|
|
3686
3706
|
<div class="filter-wrapper" part="filter-wrapper">
|
|
@@ -3782,7 +3802,7 @@
|
|
|
3782
3802
|
</li>
|
|
3783
3803
|
`}).join("")}
|
|
3784
3804
|
</ul>
|
|
3785
|
-
`,this._attachListeners(),this._attachItemListeners(this.root.querySelector(".list"))}_handleMoveAction(e){if(!this._selection.length)return;const t=this._getDisplayData(),r=this._selection.map(a=>t.findIndex(o=>this._getItemKey(o,-1)===this._getItemKey(a,-1))).filter(a=>a>=0).sort((a,o)=>a-o);if(r.length!==0)switch(e){case"top":this._moveSelectedToStart(r);break;case"up":this._moveSelectedByOne(r,-1);break;case"down":this._moveSelectedByOne(r,1);break;case"bottom":this._moveSelectedToEnd(r);break}}_moveSelectedToStart(e){const t=[],r=[];for(const o of e){const i=this._getActualIndex(o);t.push(this._data[i]),r.push(i)}r.sort((o,i)=>i-o).forEach(o=>this._data.splice(o,1));const a=this._getActualIndex(0);this._data.splice(a,0,...t),this._applyFilter(),this._updateListDisplay(),this._updateControlsState(),this._emitReorder()}_moveSelectedToEnd(e){const t=[],r=[];for(const i of e){const s=this._getActualIndex(i);t.push(this._data[s]),r.push(s)}r.sort((i,s)=>s-i).forEach(i=>this._data.splice(i,1));const a=this._getDisplayData(),o=this._getActualIndex(a.length-1);this._data.splice(o+1,0,...t),this._applyFilter(),this._updateListDisplay(),this._updateControlsState(),this._emitReorder()}_moveSelectedByOne(e,t){if(this._getDisplayData().length===0)return;const a=e.map(s=>this._getActualIndex(s)).filter(s=>s>=0).sort((s,n)=>s-n);if(a.length===0||t<0&&a[0]<=0||t>0&&a[a.length-1]>=this._data.length-1)return;const o=a.map(s=>this._data[s]);for(let s=a.length-1;s>=0;s--)this._data.splice(a[s],1);let i;t<0?i=a[0]-1:i=a[a.length-1]-a.length+1+1,i=Math.max(0,Math.min(i,this._data.length)),this._data.splice(i,0,...o),this._applyFilter(),this._updateListDisplay(),this._updateControlsState(),this._emitReorder()}_updateControlsState(){const e=this._getDisplayData(),t=this._selection.map(a=>e.findIndex(o=>this._getItemKey(o,-1)===this._getItemKey(a,-1))).filter(a=>a>=0);this.root.querySelectorAll(".control-btn").forEach(a=>{const o=a.dataset.action;let i=t.length===0;if(!i)switch(o){case"top":case"up":i=t[0]===0;break;case"bottom":case"down":i=t[t.length-1]===e.length-1;break}a.disabled=i})}}
|
|
3805
|
+
`,this._attachListeners(),this._attachItemListeners(this.root.querySelector(".list"))}_handleMoveAction(e){if(!this._selection.length)return;const t=this._getDisplayData(),r=this._selection.map(a=>t.findIndex(o=>this._getItemKey(o,-1)===this._getItemKey(a,-1))).filter(a=>a>=0).sort((a,o)=>a-o);if(r.length!==0)switch(e){case"top":this._moveSelectedToStart(r);break;case"up":this._moveSelectedByOne(r,-1);break;case"down":this._moveSelectedByOne(r,1);break;case"bottom":this._moveSelectedToEnd(r);break}}_moveSelectedToStart(e){const t=[],r=[];for(const o of e){const i=this._getActualIndex(o);t.push(this._data[i]),r.push(i)}r.sort((o,i)=>i-o).forEach(o=>this._data.splice(o,1));const a=this._getActualIndex(0);this._data.splice(a,0,...t),this._applyFilter(),this._updateListDisplay(),this._updateControlsState(),this._emitReorder()}_moveSelectedToEnd(e){const t=[],r=[];for(const i of e){const s=this._getActualIndex(i);t.push(this._data[s]),r.push(s)}r.sort((i,s)=>s-i).forEach(i=>this._data.splice(i,1));const a=this._getDisplayData(),o=this._getActualIndex(a.length-1);this._data.splice(o+1,0,...t),this._applyFilter(),this._updateListDisplay(),this._updateControlsState(),this._emitReorder()}_moveSelectedByOne(e,t){if(this._getDisplayData().length===0)return;const a=e.map(s=>this._getActualIndex(s)).filter(s=>s>=0).sort((s,n)=>s-n);if(a.length===0||t<0&&a[0]<=0||t>0&&a[a.length-1]>=this._data.length-1)return;const o=a.map(s=>this._data[s]);for(let s=a.length-1;s>=0;s--)this._data.splice(a[s],1);let i;t<0?i=a[0]-1:i=a[a.length-1]-a.length+1+1,i=Math.max(0,Math.min(i,this._data.length)),this._data.splice(i,0,...o),this._applyFilter(),this._updateListDisplay(),this._updateControlsState(),this._emitReorder()}_updateControlsState(){const e=this._getDisplayData(),t=this._selection.map(a=>e.findIndex(o=>this._getItemKey(o,-1)===this._getItemKey(a,-1))).filter(a=>a>=0);this.root.querySelectorAll(".control-btn").forEach(a=>{const o=a.dataset.action;let i=t.length===0;if(!i)switch(o){case"top":case"up":i=t[0]===0;break;case"bottom":case"down":i=t[t.length-1]===e.length-1;break}a.disabled=i})}};$t.styles=m`
|
|
3786
3806
|
|
|
3787
3807
|
:host {
|
|
3788
3808
|
display: block;
|
|
@@ -3857,7 +3877,7 @@
|
|
|
3857
3877
|
@media (max-width: 640px) { .main-row { flex-direction: column; } .controls-bar { flex-direction: row; flex-wrap: wrap; justify-content: center; position: relative; } .control-group { flex-direction: row; } .control-group + .control-group { margin-top: 0; margin-left: 4px; padding-top: 0; padding-left: 4px; border-top: none; border-left: 1px solid var(--orderlist-border); } button.control-btn { width: 44px; height: 40px; } button.control-btn::after { display: none; } .list { max-height: 300px; } }
|
|
3858
3878
|
@keyframes slideIn { from { opacity: 0; transform: translateX(-10px); } to { opacity: 1; transform: translateX(0); } }
|
|
3859
3879
|
.list-item { animation: slideIn 0.2s ease-out; }
|
|
3860
|
-
`;let Ce=zt;function Gr(){return x("fx-orderlist",Ce)}Gr();const St=class St extends b{constructor(){super(...arguments),this._source=[],this._filteredSource=null,this._target=[],this._filteredTarget=null,this._sourceSelection=[],this._targetSelection=[],this._sourceFilterValue="",this._targetFilterValue="",this._filterListenersAttached=!1,this._optionTemplate=null}static get observedAttributes(){return["source","target","source-key","target-key","filter","filter-by","filter-placeholder","dragdrop","striped","selection-mode","show-select-all","source-label","target-label"]}set source(e){this._source=e,this._filteredSource=null,this.render()}get source(){return this._source}set target(e){this._target=e,this._filteredTarget=null,this.render()}get target(){return this._target}set sourceSelection(e){this._sourceSelection=e,this.render()}get sourceSelection(){return this._sourceSelection}set targetSelection(e){this._targetSelection=e,this.render()}get targetSelection(){return this._targetSelection}get sourceKey(){return this.getAttr("source-key","")}set sourceKey(e){this.setAttribute("source-key",e)}get targetKey(){return this.getAttr("target-key","")}set targetKey(e){this.setAttribute("target-key",e)}get filter(){return this.hasAttr("filter")}set filter(e){this.toggleAttr("filter",e)}get filterBy(){return this.getAttr("filter-by","label")}set filterBy(e){this.setAttribute("filter-by",e)}get filterPlaceholder(){return this.getAttr("filter-placeholder","Buscar...")}set filterPlaceholder(e){this.setAttribute("filter-placeholder",e)}get dragdrop(){return this.hasAttr("dragdrop")}set dragdrop(e){this.toggleAttr("dragdrop",e)}get striped(){return this.hasAttr("striped")}set striped(e){this.toggleAttr("striped",e)}get selectionMode(){const e=this.getAttr("selection-mode","");return e==="single"||e==="multiple"?e:""}set selectionMode(e){this.setAttribute("selection-mode",e)}get showSelectAll(){return this.hasAttr("show-select-all")}set showSelectAll(e){this.toggleAttr("show-select-all",e)}get sourceLabel(){return this.getAttr("source-label","Disponíveis")}set sourceLabel(e){this.setAttribute("source-label",e)}get targetLabel(){return this.getAttr("target-label","Selecionados")}set targetLabel(e){this.setAttribute("target-label",e)}get sourceFilterValue(){return this._sourceFilterValue}set sourceFilterValue(e){this._sourceFilterValue=e,this._applySourceFilter(),this._updateListDisplay()}get targetFilterValue(){return this._targetFilterValue}set targetFilterValue(e){this._targetFilterValue=e,this._applyTargetFilter(),this._updateListDisplay()}setOptionTemplate(e){this._optionTemplate=e,this.render()}connectedCallback(){this._parseSourceAttribute(),this._parseTargetAttribute(),super.connectedCallback()}attributeChangedCallback(e,t,r){this.getAttr("source","")!==""&&this._parseSourceAttribute(),this.getAttr("target","")!==""&&this._parseTargetAttribute(),super.attributeChangedCallback(e,t,r)}_parseSourceAttribute(){const e=this.getAttr("source","");if(e)try{this._source=JSON.parse(e),this._filteredSource=null}catch(t){this._source=[]}}_parseTargetAttribute(){const e=this.getAttr("target","");if(e)try{this._target=JSON.parse(e),this._filteredTarget=null}catch(t){this._target=[]}}_applySourceFilter(){if(!this._sourceFilterValue){this._filteredSource=null;return}const e=this.filterBy.split(",").map(t=>t.trim());this._filteredSource=this._source.filter(t=>e.some(r=>{const a=t[r];return a==null?!1:String(a).toLowerCase().includes(this._sourceFilterValue.toLowerCase())}))}_applyTargetFilter(){if(!this._targetFilterValue){this._filteredTarget=null;return}const e=this.filterBy.split(",").map(t=>t.trim());this._filteredTarget=this._target.filter(t=>e.some(r=>{const a=t[r];return a==null?!1:String(a).toLowerCase().includes(this._targetFilterValue.toLowerCase())}))}_getDisplaySource(){return this._filteredSource||this._source}_getDisplayTarget(){return this._filteredTarget||this._target}_getItemKey(e,t,r){const a=r?this.sourceKey:this.targetKey;return a&&e[a]!=null?String(e[a]):e.id!=null?String(e.id):e.key!=null?String(e.key):e.label!=null?String(e.label):e.name!=null?String(e.name):e.value!=null?String(e.value):String(t)}_getItemLabel(e){const t=["label","name","title","text","value"];for(const r of t)if(e[r]!=null)return String(e[r]);return JSON.stringify(e)}_isSourceSelected(e,t){return this._sourceSelection.some(r=>this._getItemKey(r,-1,!0)===this._getItemKey(e,t,!0))}_isTargetSelected(e,t){return this._targetSelection.some(r=>this._getItemKey(r,-1,!1)===this._getItemKey(e,t,!1))}_emitMoveToTarget(){this.dispatchEvent(new CustomEvent("move-to-target",{bubbles:!0,composed:!0,detail:{items:[...this._sourceSelection],source:[...this._source],target:[...this._target]}}))}_emitMoveToSource(){this.dispatchEvent(new CustomEvent("move-to-source",{bubbles:!0,composed:!0,detail:{items:[...this._targetSelection],source:[...this._source],target:[...this._target]}}))}_emitSelectionChangeSource(){this.dispatchEvent(new CustomEvent("selection-change-source",{bubbles:!0,composed:!0,detail:{selection:[...this._sourceSelection]}}))}_emitSelectionChangeTarget(){this.dispatchEvent(new CustomEvent("selection-change-target",{bubbles:!0,composed:!0,detail:{selection:[...this._targetSelection]}}))}render(){const e=this._getDisplaySource(),t=this._getDisplayTarget(),r=this.selectionMode,a=r==="multiple"&&this.showSelectAll,o=e.length===0?`<li class="empty-message">${this.filter?"Nenhum resultado":"Nenhum item"}</li>`:e.map((l,p)=>`<li class="list-item${this._isSourceSelected(l,p)?" selected":""}" data-index="${p}" data-list="source" tabindex="0">${r?'<input type="checkbox" class="checkbox"'+(this._isSourceSelected(l,p)?" checked":"")+" />":""}<span class="item-content">${this._optionTemplate?this._optionTemplate(l):h(this._getItemLabel(l))}</span></li>`).join(""),i=t.length===0?`<li class="empty-message">${this.filter?"Nenhum resultado":"Nenhum selecionado"}</li>`:t.map((l,p)=>`<li class="list-item${this._isTargetSelected(l,p)?" selected":""}" data-index="${p}" data-list="target" tabindex="0">${r?'<input type="checkbox" class="checkbox"'+(this._isTargetSelected(l,p)?" checked":"")+" />":""}<span class="item-content">${this._optionTemplate?this._optionTemplate(l):h(this._getItemLabel(l))}</span></li>`).join(""),s=a?`<div class="select-all-bar" part="select-all-bar"><label><input type="checkbox" class="select-all-checkbox" data-list="source" ${this._sourceSelection.length>0&&this._sourceSelection.length===this._source.length?"checked":""} aria-label="Selecionar todos da origem" /> Selecionar Todos</label><span class="selection-count">${this._sourceSelection.length} selecionado(s)</span></div>`:"",n=a?`<div class="select-all-bar" part="select-all-bar"><label><input type="checkbox" class="select-all-checkbox" data-list="target" ${this._targetSelection.length>0&&this._targetSelection.length===this._target.length?"checked":""} aria-label="Selecionar todos do destino" /> Selecionar Todos</label><span class="selection-count">${this._targetSelection.length} selecionado(s)</span></div>`:"";this.setTemplate(`<div class="container"><div class="list-container"><div class="list-label">${h(this.sourceLabel)} (${this._source.length})</div>${this.filter?'<div class="filter-wrapper"><input type="text" class="filter-input source-filter" placeholder="'+this.filterPlaceholder+'" value="'+h(this._sourceFilterValue)+'" /></div>':""}${s}<div class="list-wrapper"><ul class="list source-list" role="listbox" tabindex="0">${o}</ul></div></div><div class="controls"><div class="control-group"><button class="control-btn" data-action="move-all-target" part="control-btn" aria-label="Mover todos para destino"><span class="control-btn-icon">»</span></button><button class="control-btn" data-action="move-target" part="control-btn" aria-label="Mover para destino"><span class="control-btn-icon">→</span></button></div><div class="control-group"><button class="control-btn" data-action="move-source" part="control-btn" aria-label="Mover para origem"><span class="control-btn-icon">←</span></button><button class="control-btn" data-action="move-all-source" part="control-btn" aria-label="Mover todos para origem"><span class="control-btn-icon">«</span></button></div></div><div class="list-container"><div class="list-label">${h(this.targetLabel)} (${this._target.length})</div>${this.filter?'<div class="filter-wrapper"><input type="text" class="filter-input target-filter" placeholder="'+this.filterPlaceholder+'" value="'+h(this._targetFilterValue)+'" /></div>':""}${n}<div class="list-wrapper"><ul class="list target-list" role="listbox" tabindex="0">${i}</ul></div></div></div>`),this._attachListeners()}_attachListeners(){this._filterListenersAttached||(this._filterListenersAttached=!0,this.root.addEventListener("input",e=>{const t=e.target;if(t.classList.contains("select-all-checkbox")){this._handleSelectAll(t);return}t.classList.contains("source-filter")?this.sourceFilterValue=t.value:t.classList.contains("target-filter")&&(this.targetFilterValue=t.value)}),this.root.addEventListener("click",e=>{const t=e.target,r=t.closest(".control-btn");if(r){switch(r.dataset.action){case"move-target":this._moveToTarget();break;case"move-all-target":this._moveAllToTarget();break;case"move-source":this._moveToSource();break;case"move-all-source":this._moveAllToSource();break}return}const a=t.closest(".list-item");if(!a)return;const o=a.dataset.list==="source",i=Number(a.dataset.index),s=(o?this._getDisplaySource():this._getDisplayTarget())[i];o?this._toggleSourceSelection(s,i):this._toggleTargetSelection(s,i)})),this._updateControlsState()}_handleSelectAll(e){e.dataset.list==="source"?(this._sourceSelection=e.checked?[...this._getDisplaySource()]:[],this._emitSelectionChangeSource()):(this._targetSelection=e.checked?[...this._getDisplayTarget()]:[],this._emitSelectionChangeTarget()),this._updateSelectionDisplay(),this._updateControlsState()}_updateSelectionDisplay(){const e=(t,r,a)=>{t&&t.querySelectorAll(".list-item").forEach(o=>{const i=Number(o.dataset.index),s=r(a()[i],i);o.classList.toggle("selected",s),o.setAttribute("aria-selected",String(s));const n=o.querySelector(".checkbox");n&&(n.checked=s)})};e(this.root.querySelector(".source-list"),(t,r)=>this._isSourceSelected(t,r),()=>this._getDisplaySource()),e(this.root.querySelector(".target-list"),(t,r)=>this._isTargetSelected(t,r),()=>this._getDisplayTarget()),this._updateSelectAllBars()}_updateSelectAllBars(){if(!(this.selectionMode==="multiple"&&this.showSelectAll))return;[{el:this.root.querySelector('.select-all-checkbox[data-list="source"]'),total:this._source.length,sel:this._sourceSelection.length},{el:this.root.querySelector('.select-all-checkbox[data-list="target"]'),total:this._target.length,sel:this._targetSelection.length}].forEach(({el:t,total:r,sel:a})=>{var i;if(!t)return;t.checked=r>0&&a===r;const o=(i=t.closest(".select-all-bar"))==null?void 0:i.querySelector(".selection-count");o&&(o.textContent=`${a} selecionado(s)`)})}_updateControlsState(){this.root.querySelectorAll(".control-btn").forEach(e=>{const t=e.dataset.action;e.disabled=t==="move-target"&&this._sourceSelection.length===0||t==="move-all-target"&&this._source.length===0||t==="move-source"&&this._targetSelection.length===0||t==="move-all-source"&&this._target.length===0})}_moveToTarget(){if(!this._sourceSelection.length)return;const e=[...this._sourceSelection];this._source=this._source.filter(t=>!e.some(r=>this._getItemKey(r,-1,!0)===this._getItemKey(t,-1,!0))),this._target=[...this._target,...e],this._sourceSelection=[],this._filteredSource=null,this._filteredTarget=null,this._updateListDisplay(),this._updateControlsState(),this._emitMoveToTarget()}_moveToSource(){if(!this._targetSelection.length)return;const e=[...this._targetSelection];this._target=this._target.filter(t=>!e.some(r=>this._getItemKey(r,-1,!1)===this._getItemKey(t,-1,!1))),this._source=[...this._source,...e],this._targetSelection=[],this._filteredSource=null,this._filteredTarget=null,this._updateListDisplay(),this._updateControlsState(),this._emitMoveToSource()}_moveAllToTarget(){const e=[...this._source];this._source=[],this._target=[...this._target,...e],this._sourceSelection=[],this._filteredSource=null,this._filteredTarget=null,this._updateListDisplay(),this._updateControlsState(),this._emitMoveToTarget()}_moveAllToSource(){const e=[...this._target];this._target=[],this._source=[...this._source,...e],this._targetSelection=[],this._filteredSource=null,this._filteredTarget=null,this._updateListDisplay(),this._updateControlsState(),this._emitMoveToSource()}_toggleSourceSelection(e,t){const r=this.selectionMode||"single",a=this._getItemKey(e,t,!0),o=this._sourceSelection.findIndex(i=>this._getItemKey(i,-1,!0)===a);o>=0?this._sourceSelection.splice(o,1):r==="multiple"?this._sourceSelection.push(e):this._sourceSelection=[e],this._emitSelectionChangeSource(),this._updateSelectionDisplay(),this._updateControlsState()}_toggleTargetSelection(e,t){const r=this.selectionMode||"single",a=this._getItemKey(e,t,!1),o=this._targetSelection.findIndex(i=>this._getItemKey(i,-1,!1)===a);o>=0?this._targetSelection.splice(o,1):r==="multiple"?this._targetSelection.push(e):this._targetSelection=[e],this._emitSelectionChangeTarget(),this._updateSelectionDisplay(),this._updateControlsState()}_updateListDisplay(){var p,f;const e=(p=this.root.querySelector(".source-list"))==null?void 0:p.parentElement,t=(f=this.root.querySelector(".target-list"))==null?void 0:f.parentElement,r=this.root.querySelector(".list-container:first-of-type .list-label"),a=this.root.querySelector(".list-container:last-of-type .list-label");if(!e||!t){this.render();return}const o=this._getDisplaySource(),i=this._getDisplayTarget(),s=this.selectionMode,n=o.length===0?`<li class="empty-message" part="empty-message">${this.filter?"Nenhum resultado":"Nenhum item"}</li>`:o.map((_,c)=>`<li class="list-item${this._isSourceSelected(_,c)?" selected":""}" part="list-item" data-index="${c}" data-list="source" role="option" aria-selected="${this._isSourceSelected(_,c)}" tabindex="0">${s?'<input type="checkbox" class="checkbox" part="checkbox"'+(this._isSourceSelected(_,c)?" checked":"")+" />":""}<span class="item-content" part="item-content">${this._optionTemplate?this._optionTemplate(_):h(this._getItemLabel(_))}</span></li>`).join(""),l=i.length===0?`<li class="empty-message" part="empty-message">${this.filter?"Nenhum resultado":"Nenhum selecionado"}</li>`:i.map((_,c)=>`<li class="list-item${this._isTargetSelected(_,c)?" selected":""}" part="list-item" data-index="${c}" data-list="target" role="option" aria-selected="${this._isTargetSelected(_,c)}" tabindex="0">${s?'<input type="checkbox" class="checkbox" part="checkbox"'+(this._isTargetSelected(_,c)?" checked":"")+" />":""}<span class="item-content" part="item-content">${this._optionTemplate?this._optionTemplate(_):h(this._getItemLabel(_))}</span></li>`).join("");e.innerHTML=`<ul class="list source-list" role="listbox" tabindex="0">${n}</ul>`,t.innerHTML=`<ul class="list target-list" role="listbox" tabindex="0">${l}</ul>`,r&&(r.textContent=`${this.sourceLabel} (${this._source.length})`),a&&(a.textContent=`${this.targetLabel} (${this._target.length})`),this._updateSelectAllBars(),this._attachListeners()}};St.styles=m`
|
|
3880
|
+
`;let Le=$t;function oa(){return v("fx-orderlist",Le)}oa();const Et=class Et extends b{constructor(){super(...arguments),this._source=[],this._filteredSource=null,this._target=[],this._filteredTarget=null,this._sourceSelection=[],this._targetSelection=[],this._sourceFilterValue="",this._targetFilterValue="",this._filterListenersAttached=!1,this._optionTemplate=null}static get observedAttributes(){return["source","target","source-key","target-key","filter","filter-by","filter-placeholder","dragdrop","striped","selection-mode","show-select-all","source-label","target-label"]}set source(e){this._source=e,this._filteredSource=null,this.render()}get source(){return this._source}set target(e){this._target=e,this._filteredTarget=null,this.render()}get target(){return this._target}set sourceSelection(e){this._sourceSelection=e,this.render()}get sourceSelection(){return this._sourceSelection}set targetSelection(e){this._targetSelection=e,this.render()}get targetSelection(){return this._targetSelection}get sourceKey(){return this.getAttr("source-key","")}set sourceKey(e){this.setAttribute("source-key",e)}get targetKey(){return this.getAttr("target-key","")}set targetKey(e){this.setAttribute("target-key",e)}get filter(){return this.hasAttr("filter")}set filter(e){this.toggleAttr("filter",e)}get filterBy(){return this.getAttr("filter-by","label")}set filterBy(e){this.setAttribute("filter-by",e)}get filterPlaceholder(){return this.getAttr("filter-placeholder","Buscar...")}set filterPlaceholder(e){this.setAttribute("filter-placeholder",e)}get dragdrop(){return this.hasAttr("dragdrop")}set dragdrop(e){this.toggleAttr("dragdrop",e)}get striped(){return this.hasAttr("striped")}set striped(e){this.toggleAttr("striped",e)}get selectionMode(){const e=this.getAttr("selection-mode","");return e==="single"||e==="multiple"?e:""}set selectionMode(e){this.setAttribute("selection-mode",e)}get showSelectAll(){return this.hasAttr("show-select-all")}set showSelectAll(e){this.toggleAttr("show-select-all",e)}get sourceLabel(){return this.getAttr("source-label","Disponíveis")}set sourceLabel(e){this.setAttribute("source-label",e)}get targetLabel(){return this.getAttr("target-label","Selecionados")}set targetLabel(e){this.setAttribute("target-label",e)}get sourceFilterValue(){return this._sourceFilterValue}set sourceFilterValue(e){this._sourceFilterValue=e,this._applySourceFilter(),this._updateListDisplay()}get targetFilterValue(){return this._targetFilterValue}set targetFilterValue(e){this._targetFilterValue=e,this._applyTargetFilter(),this._updateListDisplay()}setOptionTemplate(e){this._optionTemplate=e,this.render()}connectedCallback(){this._parseSourceAttribute(),this._parseTargetAttribute(),super.connectedCallback()}attributeChangedCallback(e,t,r){this.getAttr("source","")!==""&&this._parseSourceAttribute(),this.getAttr("target","")!==""&&this._parseTargetAttribute(),super.attributeChangedCallback(e,t,r)}_parseSourceAttribute(){const e=this.getAttr("source","");if(e)try{this._source=JSON.parse(e),this._filteredSource=null}catch(t){this._source=[]}}_parseTargetAttribute(){const e=this.getAttr("target","");if(e)try{this._target=JSON.parse(e),this._filteredTarget=null}catch(t){this._target=[]}}_applySourceFilter(){if(!this._sourceFilterValue){this._filteredSource=null;return}const e=this.filterBy.split(",").map(t=>t.trim());this._filteredSource=this._source.filter(t=>e.some(r=>{const a=t[r];return a==null?!1:String(a).toLowerCase().includes(this._sourceFilterValue.toLowerCase())}))}_applyTargetFilter(){if(!this._targetFilterValue){this._filteredTarget=null;return}const e=this.filterBy.split(",").map(t=>t.trim());this._filteredTarget=this._target.filter(t=>e.some(r=>{const a=t[r];return a==null?!1:String(a).toLowerCase().includes(this._targetFilterValue.toLowerCase())}))}_getDisplaySource(){return this._filteredSource||this._source}_getDisplayTarget(){return this._filteredTarget||this._target}_getItemKey(e,t,r){const a=r?this.sourceKey:this.targetKey;return a&&e[a]!=null?String(e[a]):e.id!=null?String(e.id):e.key!=null?String(e.key):e.label!=null?String(e.label):e.name!=null?String(e.name):e.value!=null?String(e.value):String(t)}_getItemLabel(e){const t=["label","name","title","text","value"];for(const r of t)if(e[r]!=null)return String(e[r]);return JSON.stringify(e)}_isSourceSelected(e,t){return this._sourceSelection.some(r=>this._getItemKey(r,-1,!0)===this._getItemKey(e,t,!0))}_isTargetSelected(e,t){return this._targetSelection.some(r=>this._getItemKey(r,-1,!1)===this._getItemKey(e,t,!1))}_emitMoveToTarget(){this.dispatchEvent(new CustomEvent("move-to-target",{bubbles:!0,composed:!0,detail:{items:[...this._sourceSelection],source:[...this._source],target:[...this._target]}}))}_emitMoveToSource(){this.dispatchEvent(new CustomEvent("move-to-source",{bubbles:!0,composed:!0,detail:{items:[...this._targetSelection],source:[...this._source],target:[...this._target]}}))}_emitSelectionChangeSource(){this.dispatchEvent(new CustomEvent("selection-change-source",{bubbles:!0,composed:!0,detail:{selection:[...this._sourceSelection]}}))}_emitSelectionChangeTarget(){this.dispatchEvent(new CustomEvent("selection-change-target",{bubbles:!0,composed:!0,detail:{selection:[...this._targetSelection]}}))}render(){const e=this._getDisplaySource(),t=this._getDisplayTarget(),r=this.selectionMode,a=r==="multiple"&&this.showSelectAll,o=e.length===0?`<li class="empty-message">${this.filter?"Nenhum resultado":"Nenhum item"}</li>`:e.map((l,p)=>`<li class="list-item${this._isSourceSelected(l,p)?" selected":""}" data-index="${p}" data-list="source" tabindex="0">${r?'<input type="checkbox" class="checkbox"'+(this._isSourceSelected(l,p)?" checked":"")+" />":""}<span class="item-content">${this._optionTemplate?this._optionTemplate(l):h(this._getItemLabel(l))}</span></li>`).join(""),i=t.length===0?`<li class="empty-message">${this.filter?"Nenhum resultado":"Nenhum selecionado"}</li>`:t.map((l,p)=>`<li class="list-item${this._isTargetSelected(l,p)?" selected":""}" data-index="${p}" data-list="target" tabindex="0">${r?'<input type="checkbox" class="checkbox"'+(this._isTargetSelected(l,p)?" checked":"")+" />":""}<span class="item-content">${this._optionTemplate?this._optionTemplate(l):h(this._getItemLabel(l))}</span></li>`).join(""),s=a?`<div class="select-all-bar" part="select-all-bar"><label><input type="checkbox" class="select-all-checkbox" data-list="source" ${this._sourceSelection.length>0&&this._sourceSelection.length===this._source.length?"checked":""} aria-label="Selecionar todos da origem" /> Selecionar Todos</label><span class="selection-count">${this._sourceSelection.length} selecionado(s)</span></div>`:"",n=a?`<div class="select-all-bar" part="select-all-bar"><label><input type="checkbox" class="select-all-checkbox" data-list="target" ${this._targetSelection.length>0&&this._targetSelection.length===this._target.length?"checked":""} aria-label="Selecionar todos do destino" /> Selecionar Todos</label><span class="selection-count">${this._targetSelection.length} selecionado(s)</span></div>`:"";this.setTemplate(`<div class="container"><div class="list-container"><div class="list-label">${h(this.sourceLabel)} (${this._source.length})</div>${this.filter?'<div class="filter-wrapper"><input type="text" class="filter-input source-filter" placeholder="'+this.filterPlaceholder+'" value="'+h(this._sourceFilterValue)+'" /></div>':""}${s}<div class="list-wrapper"><ul class="list source-list" role="listbox" tabindex="0">${o}</ul></div></div><div class="controls"><div class="control-group"><button class="control-btn" data-action="move-all-target" part="control-btn" aria-label="Mover todos para destino"><span class="control-btn-icon">»</span></button><button class="control-btn" data-action="move-target" part="control-btn" aria-label="Mover para destino"><span class="control-btn-icon">→</span></button></div><div class="control-group"><button class="control-btn" data-action="move-source" part="control-btn" aria-label="Mover para origem"><span class="control-btn-icon">←</span></button><button class="control-btn" data-action="move-all-source" part="control-btn" aria-label="Mover todos para origem"><span class="control-btn-icon">«</span></button></div></div><div class="list-container"><div class="list-label">${h(this.targetLabel)} (${this._target.length})</div>${this.filter?'<div class="filter-wrapper"><input type="text" class="filter-input target-filter" placeholder="'+this.filterPlaceholder+'" value="'+h(this._targetFilterValue)+'" /></div>':""}${n}<div class="list-wrapper"><ul class="list target-list" role="listbox" tabindex="0">${i}</ul></div></div></div>`),this._attachListeners()}_attachListeners(){this._filterListenersAttached||(this._filterListenersAttached=!0,this.root.addEventListener("input",e=>{const t=e.target;if(t.classList.contains("select-all-checkbox")){this._handleSelectAll(t);return}t.classList.contains("source-filter")?this.sourceFilterValue=t.value:t.classList.contains("target-filter")&&(this.targetFilterValue=t.value)}),this.root.addEventListener("click",e=>{const t=e.target,r=t.closest(".control-btn");if(r){switch(r.dataset.action){case"move-target":this._moveToTarget();break;case"move-all-target":this._moveAllToTarget();break;case"move-source":this._moveToSource();break;case"move-all-source":this._moveAllToSource();break}return}const a=t.closest(".list-item");if(!a)return;const o=a.dataset.list==="source",i=Number(a.dataset.index),s=(o?this._getDisplaySource():this._getDisplayTarget())[i];o?this._toggleSourceSelection(s,i):this._toggleTargetSelection(s,i)})),this._updateControlsState()}_handleSelectAll(e){e.dataset.list==="source"?(this._sourceSelection=e.checked?[...this._getDisplaySource()]:[],this._emitSelectionChangeSource()):(this._targetSelection=e.checked?[...this._getDisplayTarget()]:[],this._emitSelectionChangeTarget()),this._updateSelectionDisplay(),this._updateControlsState()}_updateSelectionDisplay(){const e=(t,r,a)=>{t&&t.querySelectorAll(".list-item").forEach(o=>{const i=Number(o.dataset.index),s=r(a()[i],i);o.classList.toggle("selected",s),o.setAttribute("aria-selected",String(s));const n=o.querySelector(".checkbox");n&&(n.checked=s)})};e(this.root.querySelector(".source-list"),(t,r)=>this._isSourceSelected(t,r),()=>this._getDisplaySource()),e(this.root.querySelector(".target-list"),(t,r)=>this._isTargetSelected(t,r),()=>this._getDisplayTarget()),this._updateSelectAllBars()}_updateSelectAllBars(){if(!(this.selectionMode==="multiple"&&this.showSelectAll))return;[{el:this.root.querySelector('.select-all-checkbox[data-list="source"]'),total:this._source.length,sel:this._sourceSelection.length},{el:this.root.querySelector('.select-all-checkbox[data-list="target"]'),total:this._target.length,sel:this._targetSelection.length}].forEach(({el:t,total:r,sel:a})=>{var i;if(!t)return;t.checked=r>0&&a===r;const o=(i=t.closest(".select-all-bar"))==null?void 0:i.querySelector(".selection-count");o&&(o.textContent=`${a} selecionado(s)`)})}_updateControlsState(){this.root.querySelectorAll(".control-btn").forEach(e=>{const t=e.dataset.action;e.disabled=t==="move-target"&&this._sourceSelection.length===0||t==="move-all-target"&&this._source.length===0||t==="move-source"&&this._targetSelection.length===0||t==="move-all-source"&&this._target.length===0})}_moveToTarget(){if(!this._sourceSelection.length)return;const e=[...this._sourceSelection];this._source=this._source.filter(t=>!e.some(r=>this._getItemKey(r,-1,!0)===this._getItemKey(t,-1,!0))),this._target=[...this._target,...e],this._sourceSelection=[],this._filteredSource=null,this._filteredTarget=null,this._updateListDisplay(),this._updateControlsState(),this._emitMoveToTarget()}_moveToSource(){if(!this._targetSelection.length)return;const e=[...this._targetSelection];this._target=this._target.filter(t=>!e.some(r=>this._getItemKey(r,-1,!1)===this._getItemKey(t,-1,!1))),this._source=[...this._source,...e],this._targetSelection=[],this._filteredSource=null,this._filteredTarget=null,this._updateListDisplay(),this._updateControlsState(),this._emitMoveToSource()}_moveAllToTarget(){const e=[...this._source];this._source=[],this._target=[...this._target,...e],this._sourceSelection=[],this._filteredSource=null,this._filteredTarget=null,this._updateListDisplay(),this._updateControlsState(),this._emitMoveToTarget()}_moveAllToSource(){const e=[...this._target];this._target=[],this._source=[...this._source,...e],this._targetSelection=[],this._filteredSource=null,this._filteredTarget=null,this._updateListDisplay(),this._updateControlsState(),this._emitMoveToSource()}_toggleSourceSelection(e,t){const r=this.selectionMode||"single",a=this._getItemKey(e,t,!0),o=this._sourceSelection.findIndex(i=>this._getItemKey(i,-1,!0)===a);o>=0?this._sourceSelection.splice(o,1):r==="multiple"?this._sourceSelection.push(e):this._sourceSelection=[e],this._emitSelectionChangeSource(),this._updateSelectionDisplay(),this._updateControlsState()}_toggleTargetSelection(e,t){const r=this.selectionMode||"single",a=this._getItemKey(e,t,!1),o=this._targetSelection.findIndex(i=>this._getItemKey(i,-1,!1)===a);o>=0?this._targetSelection.splice(o,1):r==="multiple"?this._targetSelection.push(e):this._targetSelection=[e],this._emitSelectionChangeTarget(),this._updateSelectionDisplay(),this._updateControlsState()}_updateListDisplay(){var p,f;const e=(p=this.root.querySelector(".source-list"))==null?void 0:p.parentElement,t=(f=this.root.querySelector(".target-list"))==null?void 0:f.parentElement,r=this.root.querySelector(".list-container:first-of-type .list-label"),a=this.root.querySelector(".list-container:last-of-type .list-label");if(!e||!t){this.render();return}const o=this._getDisplaySource(),i=this._getDisplayTarget(),s=this.selectionMode,n=o.length===0?`<li class="empty-message" part="empty-message">${this.filter?"Nenhum resultado":"Nenhum item"}</li>`:o.map((_,c)=>`<li class="list-item${this._isSourceSelected(_,c)?" selected":""}" part="list-item" data-index="${c}" data-list="source" role="option" aria-selected="${this._isSourceSelected(_,c)}" tabindex="0">${s?'<input type="checkbox" class="checkbox" part="checkbox"'+(this._isSourceSelected(_,c)?" checked":"")+" />":""}<span class="item-content" part="item-content">${this._optionTemplate?this._optionTemplate(_):h(this._getItemLabel(_))}</span></li>`).join(""),l=i.length===0?`<li class="empty-message" part="empty-message">${this.filter?"Nenhum resultado":"Nenhum selecionado"}</li>`:i.map((_,c)=>`<li class="list-item${this._isTargetSelected(_,c)?" selected":""}" part="list-item" data-index="${c}" data-list="target" role="option" aria-selected="${this._isTargetSelected(_,c)}" tabindex="0">${s?'<input type="checkbox" class="checkbox" part="checkbox"'+(this._isTargetSelected(_,c)?" checked":"")+" />":""}<span class="item-content" part="item-content">${this._optionTemplate?this._optionTemplate(_):h(this._getItemLabel(_))}</span></li>`).join("");e.innerHTML=`<ul class="list source-list" role="listbox" tabindex="0">${n}</ul>`,t.innerHTML=`<ul class="list target-list" role="listbox" tabindex="0">${l}</ul>`,r&&(r.textContent=`${this.sourceLabel} (${this._source.length})`),a&&(a.textContent=`${this.targetLabel} (${this._target.length})`),this._updateSelectAllBars(),this._attachListeners()}};Et.styles=m`
|
|
3861
3881
|
:host {
|
|
3862
3882
|
display: block;
|
|
3863
3883
|
font-family: var(--fx-font-family);
|
|
@@ -4109,7 +4129,7 @@
|
|
|
4109
4129
|
to { opacity: 1; transform: translateX(0); }
|
|
4110
4130
|
}
|
|
4111
4131
|
.list-item { animation: slideIn 0.2s ease-out; }
|
|
4112
|
-
`;let
|
|
4132
|
+
`;let Te=Et;function ia(){return v("fx-picklist",Te)}ia();const Ct=class Ct extends b{constructor(){super(...arguments),this._mo=null,this._clickListenerAttached=!1}static get observedAttributes(){return["header","expanded","disabled"]}get header(){return this.getAttr("header","")}set header(e){this.setAttribute("header",e)}get value(){return this.getAttr("value","")}set value(e){this.setAttribute("value",e)}get expanded(){return this.hasAttr("expanded")}set expanded(e){this.toggleAttr("expanded",e)}get disabled(){return this.hasAttr("disabled")}set disabled(e){this.toggleAttr("disabled",e)}connectedCallback(){super.connectedCallback(),this._clickListenerAttached||(this._clickListenerAttached=!0,this.addEventListener("click",e=>{e.composedPath().some(r=>{var a;return(a=r.classList)==null?void 0:a.contains("header")})&&(this.disabled||this.dispatchEvent(new CustomEvent("fx-accordion-toggle",{bubbles:!0,composed:!0,detail:{panel:this}})))})),this._mo=new MutationObserver(()=>this.render()),this._mo.observe(this,{attributes:!0,attributeFilter:["expanded","header","disabled"]})}disconnectedCallback(){var e;(e=this._mo)==null||e.disconnect(),this._mo=null,super.disconnectedCallback()}render(){this.setTemplate(`
|
|
4113
4133
|
<div class="panel" part="panel">
|
|
4114
4134
|
<button type="button" class="header" part="header" role="button"
|
|
4115
4135
|
aria-expanded="${this.expanded}"
|
|
@@ -4130,7 +4150,7 @@
|
|
|
4130
4150
|
</div>
|
|
4131
4151
|
</div>
|
|
4132
4152
|
</div>
|
|
4133
|
-
`)}}
|
|
4153
|
+
`)}};Ct.styles=m`
|
|
4134
4154
|
:host {
|
|
4135
4155
|
display: block;
|
|
4136
4156
|
font-family: var(--fx-font-family);
|
|
@@ -4198,11 +4218,11 @@
|
|
|
4198
4218
|
color: var(--fx-text-muted);
|
|
4199
4219
|
line-height: 1.6;
|
|
4200
4220
|
}
|
|
4201
|
-
`;let
|
|
4221
|
+
`;let qe=Ct;const Lt=class Lt extends b{constructor(){super(...arguments),this._observer=null,this._initialized=!1,this._listenersAttached=!1}static get observedAttributes(){return["value","multiple"]}get multiple(){return this.hasAttr("multiple")}set multiple(e){this.toggleAttr("multiple",e)}get values(){return this.getAttr("value","").split(",").map(e=>e.trim()).filter(Boolean)}set values(e){this.setAttribute("value",e.join(","))}connectedCallback(){this._observer=new MutationObserver(()=>this._sync()),this._observer.observe(this,{childList:!0,subtree:!0}),super.connectedCallback(),queueMicrotask(()=>this._sync())}disconnectedCallback(){var e;(e=this._observer)==null||e.disconnect(),this._observer=null}render(){this.setTemplate(`
|
|
4202
4222
|
<div class="accordion" part="accordion">
|
|
4203
4223
|
<slot></slot>
|
|
4204
4224
|
</div>
|
|
4205
|
-
`),this._sync(),this._attachListeners()}get panels(){return Array.from(this.querySelectorAll("fx-accordion-panel"))}_sync(){const e=this.values,t=Array.from(this.querySelectorAll("fx-accordion-panel"));if(!this._initialized&&e.length===0&&t.length>0){this._initialized=!0;const r=t.find(a=>!a.hasAttribute("disabled"));if(r){this.values=[r.getAttribute("value")||"0"];return}}this._initialized=!0,t.forEach((r,a)=>{const o=r.getAttribute("value")||String(a);r.hasAttribute("value")||r.setAttribute("value",o),r.toggleAttribute("expanded",e.includes(o))})}_attachListeners(){this._listenersAttached||(this._listenersAttached=!0,this.addEventListener("fx-accordion-toggle",e=>{var r;const t=(r=e.detail)==null?void 0:r.panel;!t||t.disabled||this.toggle(t)}))}toggle(e){const t=e.value;let r=this.values;e.expanded?r=r.filter(a=>a!==t):this.multiple?r=[...r,t]:r=[t],this.values=r,this._sync(),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:r}}))}open(e){const t=this.panels.find((r,a)=>(r.value||String(a))===e);t&&!t.expanded&&this.toggle(t)}close(e){const t=this.panels.find((r,a)=>(r.value||String(a))===e);t&&t.expanded&&this.toggle(t)}};
|
|
4225
|
+
`),this._sync(),this._attachListeners()}get panels(){return Array.from(this.querySelectorAll("fx-accordion-panel"))}_sync(){const e=this.values,t=Array.from(this.querySelectorAll("fx-accordion-panel"));if(!this._initialized&&e.length===0&&t.length>0){this._initialized=!0;const r=t.find(a=>!a.hasAttribute("disabled"));if(r){this.values=[r.getAttribute("value")||"0"];return}}this._initialized=!0,t.forEach((r,a)=>{const o=r.getAttribute("value")||String(a);r.hasAttribute("value")||r.setAttribute("value",o),r.toggleAttribute("expanded",e.includes(o))})}_attachListeners(){this._listenersAttached||(this._listenersAttached=!0,this.addEventListener("fx-accordion-toggle",e=>{var r;const t=(r=e.detail)==null?void 0:r.panel;!t||t.disabled||this.toggle(t)}))}toggle(e){const t=e.value;let r=this.values;e.expanded?r=r.filter(a=>a!==t):this.multiple?r=[...r,t]:r=[t],this.values=r,this._sync(),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,composed:!0,detail:{value:r}}))}open(e){const t=this.panels.find((r,a)=>(r.value||String(a))===e);t&&!t.expanded&&this.toggle(t)}close(e){const t=this.panels.find((r,a)=>(r.value||String(a))===e);t&&t.expanded&&this.toggle(t)}};Lt.styles=m`
|
|
4206
4226
|
:host {
|
|
4207
4227
|
display: block;
|
|
4208
4228
|
font-family: var(--fx-font-family);
|
|
@@ -4215,4 +4235,4 @@
|
|
|
4215
4235
|
overflow: hidden;
|
|
4216
4236
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
|
|
4217
4237
|
}
|
|
4218
|
-
`;let qe=Et;function Qr(){return x("fx-accordion",qe)}function ea(){return x("fx-accordion-panel",Te)}Qr(),ea();const Dt=["10k","10mp","11mp","123","12mp","13mp","14mp","15mp","16mp","17mp","18_up_rating","18mp","19mp","1k","1k_plus","1x_mobiledata","1x_mobiledata_badge","20mp","21mp","22mp","23mp","24fps_select","24mp","2d","2d_2","2k","2k_plus","2mp","30fps","30fps_select","360","3d","3d_2","3d_rotation","3g_mobiledata","3g_mobiledata_badge","3k","3k_plus","3mp","3p","4g_mobiledata","4g_mobiledata_badge","4g_plus_mobiledata","4k","4k_plus","4mp","50mp","5g","5g_mobiledata_badge","5k","5k_plus","5mp","60fps","60fps_select","6_ft_apart","6k","6k_plus","6mp","7k","7k_plus","7mp","8k","8k_plus","8mp","9k","9k_plus","9mp","abc","ac_unit","access_alarm","access_alarms","access_time","access_time_filled","accessibility","accessibility_new","accessible","accessible_forward","accessible_menu","account_balance","account_balance_wallet","account_box","account_child","account_child_invert","account_circle","account_circle_filled","account_circle_off","account_tree","action_key","activity_zone","acupuncture","acute","ad","ad_group","ad_group_off","ad_off","ad_units","adaptive_audio_mic","adaptive_audio_mic_off","adb","add","add_2","add_a_photo","add_ad","add_alarm","add_alert","add_box","add_business","add_call","add_card","add_chart","add_circle","add_circle_outline","add_column_left","add_column_right","add_comment","add_diamond","add_home","add_home_work","add_ic_call","add_link","add_location","add_location_alt","add_moderator","add_notes","add_photo_alternate","add_reaction","add_road","add_row_above","add_row_below","add_shopping_cart","add_task","add_to_drive","add_to_home_screen","add_to_photos","add_to_queue","add_triangle","addchart","adf_scanner","adjust","admin_meds","admin_panel_settings","ads_click","agender","agriculture","air","air_freshener","air_purifier","air_purifier_gen","airline_seat_flat","airline_seat_flat_angled","airline_seat_individual_suite","airline_seat_legroom_extra","airline_seat_legroom_normal","airline_seat_legroom_reduced","airline_seat_recline_extra","airline_seat_recline_normal","airline_stops","airlines","airplane_ticket","airplanemode_active","airplanemode_inactive","airplay","airport_shuttle","airware","airwave","alarm","alarm_add","alarm_off","alarm_on","alarm_pause","alarm_smart_wake","album","align_center","align_end","align_flex_center","align_flex_end","align_flex_start","align_horizontal_center","align_horizontal_left","align_horizontal_right","align_items_stretch","align_justify_center","align_justify_flex_end","align_justify_flex_start","align_justify_space_around","align_justify_space_between","align_justify_space_even","align_justify_stretch","align_self_stretch","align_space_around","align_space_between","align_space_even","align_start","align_stretch","align_vertical_bottom","align_vertical_center","align_vertical_top","all_inbox","all_inclusive","all_match","all_out","allergies","allergy","alt_route","alternate_email","altitude","ambient_screen","ambulance","amend","amp_stories","analytics","anchor","android","android_cell_4_bar","android_cell_4_bar_alert","android_cell_4_bar_off","android_cell_4_bar_plus","android_cell_5_bar","android_cell_5_bar_alert","android_cell_5_bar_off","android_cell_5_bar_plus","android_cell_dual_4_bar","android_cell_dual_4_bar_alert","android_cell_dual_4_bar_plus","android_cell_dual_5_bar","android_cell_dual_5_bar_alert","android_cell_dual_5_bar_plus","android_wifi_3_bar","android_wifi_3_bar_alert","android_wifi_3_bar_lock","android_wifi_3_bar_off","android_wifi_3_bar_plus","android_wifi_3_bar_question","android_wifi_4_bar","android_wifi_4_bar_alert","android_wifi_4_bar_lock","android_wifi_4_bar_off","android_wifi_4_bar_plus","android_wifi_4_bar_question","animated_images","animation","announcement","antigravity","aod","aod_tablet","aod_watch","apartment","api","apk_document","apk_install","app_badging","app_blocking","app_promo","app_registration","app_settings_alt","app_shortcut","apparel","approval","approval_delegation","approval_delegation_off","apps","apps_outage","aq","aq_indoor","ar_on_you","ar_stickers","architecture","archive","area_chart","arming_countdown","arrow_and_edge","arrow_back","arrow_back_2","arrow_back_ios","arrow_back_ios_new","arrow_circle_down","arrow_circle_left","arrow_circle_right","arrow_circle_up","arrow_cool_down","arrow_downward","arrow_downward_alt","arrow_drop_down","arrow_drop_down_circle","arrow_drop_up","arrow_forward","arrow_forward_ios","arrow_insert","arrow_left","arrow_left_alt","arrow_menu_close","arrow_menu_open","arrow_or_edge","arrow_outward","arrow_range","arrow_right","arrow_right_alt","arrow_selector_tool","arrow_shape_up","arrow_shape_up_stack","arrow_shape_up_stack_2","arrow_split","arrow_top_left","arrow_top_right","arrow_upload_progress","arrow_upload_ready","arrow_upward","arrow_upward_alt","arrow_warm_up","arrows_input","arrows_left_right_circle","arrows_more_down","arrows_more_up","arrows_output","arrows_outward","arrows_up_down_circle","art_track","article","article_person","article_shortcut","artist","aspect_ratio","assessment","assignment","assignment_add","assignment_globe","assignment_ind","assignment_late","assignment_return","assignment_returned","assignment_turned_in","assist_walker","assistant","assistant_device","assistant_direction","assistant_navigation","assistant_on_hub","assistant_photo","assured_workload","asterisk","astrophotography_auto","astrophotography_off","atm","atr","attach_email","attach_file","attach_file_add","attach_file_off","attach_money","attachment","attractions","attribution","audio_capture","audio_description","audio_file","audio_video_receiver","audiotrack","auto_activity_zone","auto_awesome","auto_awesome_mosaic","auto_awesome_motion","auto_delete","auto_detect_voice","auto_draw_solid","auto_fix","auto_fix_high","auto_fix_normal","auto_fix_off","auto_graph","auto_label","auto_meeting_room","auto_mode","auto_read_pause","auto_read_play","auto_schedule","auto_stories","auto_stories_off","auto_timer","auto_towing","auto_transmission","auto_videocam","autofps_select","automation","autopause","autopay","autoplay","autorenew","autostop","av1","av_timer","avc","avg_pace","avg_time","avocado_bean","award_meal","award_star","azm","b_circle","baby_changing_station","back_hand","back_to_tab","background_dot_large","background_dot_small","background_grid_small","background_replace","backlight_high","backlight_high_off","backlight_low","backpack","backspace","backup","backup_table","badge","badge_critical_battery","badminton","bakery_dining","balance","balcony","ballot","bar_chart","bar_chart_4_bars","bar_chart_off","barcode","barcode_reader","barcode_scanner","barefoot","batch_prediction","bath_bedrock","bath_outdoor","bath_private","bath_public_large","bath_soak","bathroom","bathtub","battery_0_bar","battery_1_bar","battery_20","battery_2_bar","battery_30","battery_3_bar","battery_4_bar","battery_50","battery_5_bar","battery_60","battery_6_bar","battery_80","battery_90","battery_alert","battery_android_0","battery_android_1","battery_android_2","battery_android_3","battery_android_4","battery_android_5","battery_android_6","battery_android_alert","battery_android_bolt","battery_android_frame_1","battery_android_frame_2","battery_android_frame_3","battery_android_frame_4","battery_android_frame_5","battery_android_frame_6","battery_android_frame_alert","battery_android_frame_bolt","battery_android_frame_full","battery_android_frame_plus","battery_android_frame_question","battery_android_frame_share","battery_android_frame_shield","battery_android_full","battery_android_plus","battery_android_question","battery_android_share","battery_android_shield","battery_change","battery_charging_20","battery_charging_20_2","battery_charging_30","battery_charging_30_2","battery_charging_50","battery_charging_50_2","battery_charging_60","battery_charging_60_2","battery_charging_80","battery_charging_80_2","battery_charging_90","battery_charging_full","battery_charging_full_2","battery_error","battery_full","battery_full_alt","battery_horiz_000","battery_horiz_050","battery_horiz_075","battery_low","battery_plus","battery_profile","battery_saver","battery_share","battery_status_good","battery_std","battery_unknown","battery_vert_005","battery_vert_020","battery_vert_050","battery_very_low","beach_access","bed","bedroom_baby","bedroom_child","bedroom_parent","bedtime","bedtime_off","beenhere","beer_meal","bento","bia","bid_landscape","bid_landscape_disabled","bigtop_updates","bike_dock","bike_lane","bike_scooter","biotech","blanket","blender","blind","blinds","blinds_2","blinds_2_closed","blinds_closed","block","blood_pressure","bloodtype","bluetooth","bluetooth_audio","bluetooth_connected","bluetooth_disabled","bluetooth_drive","bluetooth_searching","blur_circular","blur_linear","blur_medium","blur_off","blur_on","blur_short","boat_bus","boat_railway","body_fat","body_system","bolt","bolt_boost","bomb","book","book_2","book_3","book_4","book_5","book_6","book_online","book_ribbon","bookmark","bookmark_add","bookmark_added","bookmark_bag","bookmark_border","bookmark_check","bookmark_flag","bookmark_heart","bookmark_manager","bookmark_remove","bookmark_stacks","bookmark_star","bookmarks","books_movies_and_music","border_all","border_bottom","border_clear","border_color","border_horizontal","border_inner","border_left","border_outer","border_right","border_style","border_top","border_vertical","borg","bottom_app_bar","bottom_drawer","bottom_navigation","bottom_panel_close","bottom_panel_open","bottom_right_click","bottom_sheets","box","box_add","box_edit","boy","brand_awareness","brand_family","branding_watermark","breakfast_dining","breaking_news","breaking_news_alt_1","breastfeeding","brick","briefcase_meal","brightness_1","brightness_2","brightness_3","brightness_4","brightness_5","brightness_6","brightness_7","brightness_alert","brightness_auto","brightness_empty","brightness_high","brightness_low","brightness_medium","bring_your_own_ip","broadcast_on_home","broadcast_on_personal","broken_image","browse","browse_activity","browse_gallery","browser_not_supported","browser_updated","brunch_dining","brush","bubble","bubble_chart","bubbles","bucket_check","bug_report","build","build_circle","bullet_chart","bungalow","burst_mode","bus_alert","bus_map_pin","bus_railway","business","business_center","business_chip","business_messages","buttons_alt","cabin","cable","cable_car","cached","cadence","cake","cake_add","calculate","calendar_add_on","calendar_apps_script","calendar_check","calendar_clock","calendar_lock","calendar_meal","calendar_meal_2","calendar_month","calendar_today","calendar_view_day","calendar_view_month","calendar_view_week","call","call_end","call_end_alt","call_log","call_made","call_merge","call_missed","call_missed_outgoing","call_quality","call_received","call_split","call_to_action","camera","camera_alt","camera_enhance","camera_front","camera_indoor","camera_outdoor","camera_rear","camera_roll","camera_video","cameraswitch","campaign","camping","cancel","cancel_presentation","cancel_schedule_send","candle","candlestick_chart","cannabis","captive_portal","capture","car_crash","car_defrost_left","car_defrost_low_left","car_defrost_low_right","car_defrost_mid_left","car_defrost_mid_low_left","car_defrost_mid_low_right","car_defrost_mid_right","car_defrost_right","car_fan_low_left","car_fan_low_mid_left","car_fan_low_right","car_fan_mid_left","car_fan_mid_low_right","car_fan_mid_right","car_fan_recirculate","car_fan_recirculate_2","car_gear","car_lock","car_mirror_heat","car_rental","car_repair","car_seat_off","car_tag","card_giftcard","card_membership","card_travel","cardio_load","cardiology","cards","cards_stack","cards_star","carpenter","carry_on_bag","carry_on_bag_checked","carry_on_bag_inactive","carry_on_bag_question","cases","casino","cast","cast_connected","cast_for_education","cast_pause","cast_warning","castle","category","category_search","celebration","cell_merge","cell_tower","cell_wifi","center_focus_strong","center_focus_weak","chair","chair_alt","chair_counter","chair_fireplace","chair_umbrella","chalet","change_circle","change_history","charger","charging_station","chart_data","chat","chat_add_on","chat_apps_script","chat_bubble","chat_bubble_off","chat_bubble_outline","chat_dashed","chat_error","chat_info","chat_paste_go","chat_paste_go_2","check","check_alert","check_box","check_box_outline_blank","check_circle","check_circle_filled","check_circle_outline","check_circle_unread","check_in_out","check_indeterminate_small","check_small","checkbook","checked_bag","checked_bag_question","checklist","checklist_rtl","checkroom","cheer","chef_hat","chess","chess_bishop","chess_bishop_2","chess_king","chess_king_2","chess_knight","chess_pawn","chess_pawn_2","chess_queen","chess_rook","chevron_backward","chevron_forward","chevron_left","chevron_line_up","chevron_right","child_care","child_friendly","child_hat","chip_extraction","chips","chrome_reader_mode","chromecast_2","chromecast_device","chronic","church","cinematic_blur","circle","circle_circle","circle_notifications","circles","circles_ext","clarify","class","clean_hands","cleaning","cleaning_bucket","cleaning_services","clear","clear_all","clear_day","clear_night","climate_mini_split","clinical_notes","clock_arrow_down","clock_arrow_up","clock_loader_10","clock_loader_20","clock_loader_40","clock_loader_60","clock_loader_80","clock_loader_90","close","close_fullscreen","close_small","closed_caption","closed_caption_add","closed_caption_disabled","closed_caption_off","cloud","cloud_alert","cloud_circle","cloud_done","cloud_download","cloud_lock","cloud_off","cloud_queue","cloud_sync","cloud_upload","cloudy","cloudy_filled","cloudy_snowing","co2","co_present","code","code_blocks","code_off","code_xml","coffee","coffee_maker","cognition","cognition_2","collapse_all","collapse_content","collections","collections_bookmark","color_lens","colorize","colors","combine_columns","comedy_mask","comic_bubble","comment","comment_bank","comments_disabled","commit","communication","communities","communities_filled","commute","compare","compare_arrows","compass_calibration","component_exchange","compost","compress","computer","computer_arrow_up","computer_cancel","computer_sound","concierge","conditions","confirmation_number","congenital","connect_without_contact","connected_tv","connecting_airports","construction","contact_emergency","contact_mail","contact_page","contact_phone","contact_phone_filled","contact_support","contactless","contactless_off","contacts","contacts_product","content_copy","content_cut","content_paste","content_paste_go","content_paste_off","content_paste_search","contextual_token","contextual_token_add","contract","contract_delete","contract_edit","contrast","contrast_circle","contrast_rtl_off","contrast_square","control_camera","control_point","control_point_duplicate","controller_gen","conversation","conversion_path","conversion_path_off","convert_to_text","conveyor_belt","cookie","cookie_off","cooking","cool_to_dry","copy_all","copyright","coronavirus","corporate_fare","cottage","counter_0","counter_1","counter_2","counter_3","counter_4","counter_5","counter_6","counter_7","counter_8","counter_9","countertops","create","create_new_folder","credit_card","credit_card_clock","credit_card_gear","credit_card_heart","credit_card_off","credit_score","crib","crisis_alert","crop","crop_16_9","crop_21_9","crop_2_3","crop_3_2","crop_5_4","crop_7_5","crop_9_16","crop_din","crop_free","crop_landscape","crop_original","crop_portrait","crop_rotate","crop_square","crossword","crowdsource","crown","cruelty_free","css","csv","currency_bitcoin","currency_exchange","currency_franc","currency_lira","currency_pound","currency_ruble","currency_rupee","currency_rupee_circle","currency_yen","currency_yuan","curtains","curtains_closed","custom_typography","cut","cycle","cyclone","dangerous","dark_mode","dashboard","dashboard_2","dashboard_2_add","dashboard_2_edit","dashboard_2_gear","dashboard_customize","data_alert","data_array","data_check","data_exploration","data_info_alert","data_loss_prevention","data_object","data_saver_off","data_saver_on","data_table","data_thresholding","data_usage","database","database_off","database_search","database_upload","dataset","dataset_linked","date_range","deblur","deceased","decimal_decrease","decimal_increase","deck","dehaze","delete","delete_forever","delete_history","delete_outline","delete_sweep","delivery_dining","delivery_truck_bolt","delivery_truck_speed","demography","density_large","density_medium","density_small","dentistry","departure_board","deployed_code","deployed_code_account","deployed_code_alert","deployed_code_history","deployed_code_update","dermatology","description","deselect","design_services","desk","deskphone","desktop_access_disabled","desktop_cloud","desktop_cloud_stack","desktop_landscape","desktop_landscape_add","desktop_mac","desktop_portrait","desktop_windows","destruction","details","detection_and_zone","detection_and_zone_off","detector","detector_alarm","detector_battery","detector_co","detector_offline","detector_smoke","detector_status","developer_board","developer_board_off","developer_guide","developer_mode","developer_mode_tv","device_band","device_hub","device_reset","device_thermostat","device_unknown","devices","devices_fold","devices_fold_2","devices_off","devices_other","devices_wearables","dew_point","diagnosis","diagonal_line","dialer_sip","dialogs","dialpad","diamond","diamond_shine","dictionary","difference","digital_out_of_home","digital_wellbeing","dine_heart","dine_in","dine_lamp","dining","dinner_dining","directions","directions_alt","directions_alt_off","directions_bike","directions_boat","directions_boat_filled","directions_bus","directions_bus_filled","directions_car","directions_car_filled","directions_off","directions_railway","directions_railway_2","directions_railway_filled","directions_run","directions_subway","directions_subway_filled","directions_transit","directions_transit_filled","directions_walk","directory_sync","dirty_lens","disabled_by_default","disabled_visible","disc_full","discover_tune","dishwasher","dishwasher_gen","display_add","display_external_input","display_settings","distance","diversity_1","diversity_2","diversity_3","diversity_4","dns","do_disturb","do_disturb_alt","do_disturb_off","do_disturb_on","do_not_disturb","do_not_disturb_alt","do_not_disturb_off","do_not_disturb_on","do_not_disturb_on_total_silence","do_not_step","do_not_touch","dock","dock_to_bottom","dock_to_left","dock_to_right","docs","docs_add_on","docs_apps_script","document_scanner","document_search","domain","domain_add","domain_disabled","domain_disabled_check","domain_verification","domain_verification_off","domino_mask","done","done_all","done_outline","donut_large","donut_small","door_back","door_front","door_open","door_sensor","door_sliding","doorbell","doorbell_3p","doorbell_chime","double_arrow","downhill_skiing","download","download_2","download_done","download_for_offline","downloading","draft","draft_orders","drafts","drag_click","drag_handle","drag_indicator","drag_pan","draw","draw_abstract","draw_collage","drawing_recognition","dresser","drive_eta","drive_export","drive_file_move","drive_file_move_outline","drive_file_move_rtl","drive_file_rename","drive_file_rename_outline","drive_folder_upload","drone","drone_2","dropdown","dropdown_menu","dropper_eye","dry","dry_cleaning","dual_screen","duo","dvr","dynamic_feed","dynamic_form","e911_avatar","e911_emergency","e_mobiledata","e_mobiledata_badge","ear_sound","earbud_case","earbud_left","earbud_right","earbuds","earbuds_2","earbuds_battery","early_on","earthquake","east","ecg","ecg_heart","eco","eda","edgesensor_high","edgesensor_low","edit","edit_arrow_down","edit_arrow_up","edit_attributes","edit_audio","edit_calendar","edit_document","edit_location","edit_location_alt","edit_note","edit_notifications","edit_off","edit_road","edit_square","editor_choice","egg","egg_alt","eject","elderly","elderly_woman","electric_bike","electric_bolt","electric_car","electric_meter","electric_moped","electric_rickshaw","electric_scooter","electrical_services","elevation","elevator","email","emergency","emergency_heat","emergency_heat_2","emergency_home","emergency_recording","emergency_share","emergency_share_off","emoji_emotions","emoji_events","emoji_flags","emoji_food_beverage","emoji_language","emoji_nature","emoji_objects","emoji_people","emoji_symbols","emoji_transportation","emoticon","empty_dashboard","enable","encrypted","encrypted_add","encrypted_add_circle","encrypted_minus_circle","encrypted_off","endocrinology","energy","energy_program_saving","energy_program_time_used","energy_savings_leaf","engineering","enhanced_encryption","ent","enterprise","enterprise_off","equal","equalizer","eraser_size_1","eraser_size_2","eraser_size_3","eraser_size_4","eraser_size_5","error","error_circle_rounded","error_med","error_outline","escalator","escalator_warning","euro","euro_symbol","ev_charger","ev_mobiledata_badge","ev_shadow","ev_shadow_add","ev_shadow_minus","ev_station","event","event_available","event_busy","event_list","event_note","event_repeat","event_seat","event_upcoming","exclamation","exercise","exit_to_app","expand","expand_all","expand_circle_down","expand_circle_right","expand_circle_up","expand_content","expand_less","expand_more","expansion_panels","expension_panels","experiment","explicit","explore","explore_nearby","explore_off","explosion","export_notes","exposure","exposure_neg_1","exposure_neg_2","exposure_plus_1","exposure_plus_2","exposure_zero","extension","extension_off","eye_tracking","eyebrow","eyeglasses","eyeglasses_2","eyeglasses_2_sound","eyeglasses_3","face","face_2","face_3","face_4","face_5","face_6","face_down","face_left","face_nod","face_retouching_natural","face_retouching_off","face_right","face_shake","face_unlock","face_up","fact_check","factory","falling","familiar_face_and_zone","family_group","family_history","family_home","family_link","family_restroom","family_star","fan_focus","fan_indirect","farsight_digital","fast_forward","fast_rewind","fastfood","faucet","favorite","favorite_border","fax","feature_search","featured_play_list","featured_seasonal_and_gifts","featured_video","feed","feedback","female","femur","femur_alt","fence","fertile","festival","fiber_dvr","fiber_manual_record","fiber_new","fiber_pin","fiber_smart_record","file_copy","file_copy_off","file_download","file_download_done","file_download_off","file_export","file_json","file_map","file_map_stack","file_open","file_png","file_present","file_save","file_save_off","file_upload","file_upload_off","files","filter","filter_1","filter_2","filter_3","filter_4","filter_5","filter_6","filter_7","filter_8","filter_9","filter_9_plus","filter_alt","filter_alt_off","filter_arrow_right","filter_b_and_w","filter_center_focus","filter_drama","filter_frames","filter_hdr","filter_list","filter_list_alt","filter_list_off","filter_none","filter_retrolux","filter_tilt_shift","filter_vintage","finance","finance_chip","finance_mode","find_in_page","find_replace","fingerprint","fingerprint_off","fire_check","fire_extinguisher","fire_hydrant","fire_truck","fireplace","first_page","fit_page","fit_page_height","fit_page_width","fit_screen","fit_width","fitness_center","fitness_tracker","fitness_trackers","flag","flag_2","flag_check","flag_circle","flag_filled","flaky","flare","flash_auto","flash_off","flash_on","flashlight_off","flashlight_on","flatware","flex_direction","flex_no_wrap","flex_wrap","flight","flight_class","flight_land","flight_takeoff","flights_and_hotels","flightsmode","flip","flip_camera_android","flip_camera_ios","flip_to_back","flip_to_front","float_landscape_2","float_portrait_2","flood","floor","floor_lamp","flourescent","flowchart","flowsheet","fluid","fluid_balance","fluid_med","fluorescent","flutter","flutter_dash","flyover","fmd_bad","fmd_good","foggy","folded_hands","folder","folder_check","folder_check_2","folder_code","folder_copy","folder_data","folder_delete","folder_eye","folder_info","folder_limited","folder_managed","folder_match","folder_off","folder_open","folder_shared","folder_special","folder_supervised","folder_zip","follow_the_signs","font_download","font_download_off","food_bank","foot_bones","footprint","for_you","forest","fork_chart","fork_left","fork_right","fork_spoon","forklift","format_align_center","format_align_justify","format_align_left","format_align_right","format_bold","format_clear","format_color_fill","format_color_reset","format_color_text","format_h1","format_h2","format_h3","format_h4","format_h5","format_h6","format_image_back","format_image_break_left","format_image_break_right","format_image_front","format_image_inline_left","format_image_inline_right","format_image_left","format_image_right","format_indent_decrease","format_indent_increase","format_ink_highlighter","format_italic","format_letter_spacing","format_letter_spacing_2","format_letter_spacing_standard","format_letter_spacing_wide","format_letter_spacing_wider","format_line_spacing","format_list_bulleted","format_list_bulleted_add","format_list_numbered","format_list_numbered_rtl","format_overline","format_paint","format_paint_off","format_paragraph","format_quote","format_quote_off","format_shapes","format_size","format_strikethrough","format_text_clip","format_text_overflow","format_text_wrap","format_textdirection_l_to_r","format_textdirection_r_to_l","format_textdirection_vertical","format_underlined","format_underlined_squiggle","forms_add_on","forms_apps_script","fort","forum","forward","forward_10","forward_30","forward_5","forward_circle","forward_media","forward_to_inbox","foundation","fragrance","frame_bug","frame_exclamation","frame_inspect","frame_person","frame_person_mic","frame_person_off","frame_reload","frame_source","free_breakfast","free_cancellation","front_hand","front_loader","full_coverage","full_hd","full_stacked_bar_chart","fullscreen","fullscreen_exit","fullscreen_portrait","function","functions","funicular","g_mobiledata","g_mobiledata_badge","g_translate","gallery_thumbnail","game_bumper_left","game_bumper_right","game_button_l","game_button_l1","game_button_l2","game_button_r","game_button_r1","game_button_r2","game_button_zl","game_button_zr","game_stick_l3","game_stick_left","game_stick_r3","game_stick_right","game_trigger_left","game_trigger_right","gamepad","gamepad_circle_down","gamepad_circle_left","gamepad_circle_right","gamepad_circle_up","gamepad_down","gamepad_left","gamepad_right","gamepad_up","games","garage","garage_check","garage_door","garage_door_open","garage_home","garage_money","garden_cart","gas_meter","gastroenterology","gate","gavel","general_device","generating_tokens","genetics","genres","gesture","gesture_select","get_app","gif","gif_2","gif_box","girl","gite","glass_cup","globe","globe_2_cancel","globe_2_question","globe_asia","globe_book","globe_clock","globe_location_pin","globe_uk","glucose","glyphs","go_to_line","golf_course","gondola_lift","google_home_devices","google_plus_reshare","google_tv_remote","google_wifi","gpp_bad","gpp_good","gpp_maybe","gps_fixed","gps_not_fixed","gps_off","grade","gradient","grading","grain","graph_1","graph_2","graph_3","graph_4","graph_5","graph_6","graph_7","graph_8","graphic_eq","graphic_eq_off","grass","grid_3x3","grid_3x3_off","grid_4x4","grid_goldenratio","grid_guides","grid_layout_side","grid_off","grid_on","grid_view","grocery","group","group_add","group_off","group_remove","group_search","group_work","grouped_bar_chart","groups","groups_2","groups_3","guardian","gynecology","h_mobiledata","h_mobiledata_badge","h_plus_mobiledata","h_plus_mobiledata_badge","hail","hallway","hanami_dango","hand_bones","hand_gesture","hand_gesture_off","hand_meal","hand_package","handheld_controller","handshake","handwriting_recognition","handyman","hangout_video","hangout_video_off","hard_disk","hard_drive","hard_drive_2","hardware","hd","hdr_auto","hdr_auto_select","hdr_enhanced_select","hdr_off","hdr_off_select","hdr_on","hdr_on_select","hdr_plus","hdr_plus_off","hdr_strong","hdr_weak","head_mounted_device","headphones","headphones_battery","headset","headset_mic","headset_off","healing","health_and_beauty","health_and_safety","health_cross","health_metrics","heap_snapshot_large","heap_snapshot_multiple","heap_snapshot_thumbnail","hearing","hearing_aid","hearing_aid_disabled","hearing_aid_disabled_left","hearing_aid_left","hearing_disabled","heart_broken","heart_check","heart_minus","heart_plus","heart_smile","heat","heat_pump","heat_pump_balance","height","helicopter","help","help_center","help_clinic","help_outline","hematology","hevc","hexagon","hide","hide_image","hide_source","high_chair","high_density","high_quality","high_quality_off","high_res","highlight","highlight_alt","highlight_keyboard_focus","highlight_mouse_cursor","highlight_off","highlight_text_cursor","highlighter_size_1","highlighter_size_2","highlighter_size_3","highlighter_size_4","highlighter_size_5","hiking","history","history_2","history_edu","history_off","history_toggle_off","hive","hls","hls_off","holiday_village","home","home_and_garden","home_app_logo","home_filled","home_health","home_improvement_and_tools","home_iot_device","home_max","home_max_dots","home_mini","home_pin","home_repair_service","home_speaker","home_storage","home_storage_gear","home_work","horizontal_align_center","horizontal_align_left","horizontal_align_right","horizontal_distribute","horizontal_rule","horizontal_split","host","hot_tub","hotel","hotel_class","hourglass","hourglass_arrow_down","hourglass_arrow_up","hourglass_bottom","hourglass_check","hourglass_disabled","hourglass_empty","hourglass_full","hourglass_pause","hourglass_top","house","house_siding","house_with_shield","houseboat","household_supplies","hov","how_to_reg","how_to_vote","hr_resting","html","http","https","hub","humerus","humerus_alt","humidity_high","humidity_indoor","humidity_low","humidity_mid","humidity_percentage","hvac","hvac_max_defrost","ice_skating","icecream","id_card","id_card_2","identity_aware_proxy","identity_platform","ifl","iframe","iframe_off","image","image_arrow_up","image_aspect_ratio","image_inset","image_not_supported","image_search","imagesearch_roller","imagesmode","immunology","import_contacts","import_export","important_devices","in_home_mode","inactive_order","inbox","inbox_customize","inbox_text","inbox_text_asterisk","inbox_text_person","inbox_text_share","incomplete_circle","indeterminate_check_box","indeterminate_question_box","info","info_i","infrared","ink_eraser","ink_eraser_off","ink_highlighter","ink_highlighter_move","ink_highlighter_off","ink_marker","ink_pen","ink_selection","inpatient","input","input_circle","insert_chart","insert_chart_filled","insert_chart_outlined","insert_comment","insert_drive_file","insert_emoticon","insert_invitation","insert_link","insert_page_break","insert_photo","insert_text","insights","install_desktop","install_mobile","instant_mix","integration_instructions","interactive_space","interests","interpreter_mode","inventory","inventory_2","invert_colors","invert_colors_off","ios","ios_share","iron","iso","jamboard_kiosk","japanese_curry","japanese_flag","javascript","jewelry","join","join_full","join_inner","join_left","join_right","joystick","jump_to_element","kanji_alcohol","kayaking","kebab_dining","keep","keep_off","keep_pin","keep_public","kettle","key","key_off","key_vertical","key_visualizer","keyboard","keyboard_alt","keyboard_arrow_down","keyboard_arrow_left","keyboard_arrow_right","keyboard_arrow_up","keyboard_backspace","keyboard_capslock","keyboard_capslock_badge","keyboard_command_key","keyboard_control_key","keyboard_double_arrow_down","keyboard_double_arrow_left","keyboard_double_arrow_right","keyboard_double_arrow_up","keyboard_external_input","keyboard_full","keyboard_hide","keyboard_keys","keyboard_lock","keyboard_lock_off","keyboard_off","keyboard_onscreen","keyboard_option_key","keyboard_previous_language","keyboard_return","keyboard_tab","keyboard_tab_rtl","keyboard_voice","kid_star","king_bed","kitchen","kitesurfing","lab_panel","lab_profile","lab_research","label","label_important","label_important_outline","label_off","label_outline","labs","lan","landscape","landscape_2","landscape_2_edit","landscape_2_off","landslide","language","language_chinese_array","language_chinese_cangjie","language_chinese_dayi","language_chinese_pinyin","language_chinese_quick","language_chinese_wubi","language_french","language_gb_english","language_international","language_japanese_kana","language_korean_latin","language_pinyin","language_spanish","language_us","language_us_colemak","language_us_dvorak","laps","laptop","laptop_car","laptop_chromebook","laptop_mac","laptop_windows","lasso_select","last_page","launch","laundry","layers","layers_clear","lda","leaderboard","leak_add","leak_remove","left_click","left_panel_close","left_panel_open","legend_toggle","lens","lens_blur","letter_switch","library_add","library_add_check","library_books","library_music","license","lift_to_talk","light","light_group","light_group_2","light_mode","light_mode_auto","light_off","lightbulb","lightbulb_2","lightbulb_circle","lightbulb_outline","lightning_stand","lightstrip","line_axis","line_curve","line_end","line_end_arrow","line_end_arrow_notch","line_end_circle","line_end_diamond","line_end_square","line_start","line_start_arrow","line_start_arrow_notch","line_start_circle","line_start_diamond","line_start_square","line_style","line_weight","linear_scale","link","link_2","link_off","linked_camera","linked_services","lips","liquor","list","list_2","list_alt","list_alt_add","list_alt_check","list_arrow","lists","live_help","live_tv","living","local_activity","local_airport","local_atm","local_bar","local_cafe","local_car_wash","local_convenience_store","local_dining","local_drink","local_fire_department","local_florist","local_gas_station","local_grocery_store","local_hospital","local_hotel","local_laundry_service","local_library","local_mall","local_movies","local_offer","local_parking","local_pharmacy","local_phone","local_pizza","local_play","local_police","local_post_office","local_printshop","local_see","local_shipping","local_taxi","location_automation","location_away","location_chip","location_city","location_disabled","location_home","location_off","location_on","location_pin","location_searching","locator_tag","lock","lock_clock","lock_open","lock_open_circle","lock_open_right","lock_outline","lock_person","lock_reset","login","logo_dev","logout","looks","looks_3","looks_4","looks_5","looks_6","looks_one","looks_two","loop","loupe","low_density","low_priority","lowercase","loyalty","lte_mobiledata","lte_mobiledata_badge","lte_plus_mobiledata","lte_plus_mobiledata_badge","luggage","lunch_dining","lyrics","macro_auto","macro_off","magic_button","magic_exchange","magic_tether","magnification_large","magnification_small","magnify_docked","magnify_fullscreen","mail","mail_asterisk","mail_lock","mail_off","mail_outline","mail_shield","male","man","man_2","man_3","man_4","manage_accounts","manage_history","manage_search","manga","manufacturing","map","map_pin_heart","map_pin_review","map_search","maps_home_work","maps_ugc","margin","mark_as_unread","mark_chat_read","mark_chat_unread","mark_email_read","mark_email_unread","mark_unread_chat_alt","markdown","markdown_copy","markdown_paste","markunread","markunread_mailbox","masked_transitions","masked_transitions_add","masks","massage","match_case","match_case_off","match_word","matter","maximize","meal_dinner","meal_lunch","measuring_tape","media_bluetooth_off","media_bluetooth_on","media_link","media_output","media_output_off","mediation","medical_information","medical_mask","medical_services","medication","medication_liquid","meeting_room","memory","memory_alt","menstrual_health","menu","menu_book","menu_book_2","menu_open","merge","merge_type","message","metabolism","metro","mfg_nest_yale_lock","mic","mic_alert","mic_double","mic_external_off","mic_external_on","mic_gear","mic_none","mic_off","microbiology","microwave","microwave_gen","military_tech","mimo","mimo_disconnect","mindfulness","minimize","minor_crash","mintmark","missed_video_call","missed_video_call_filled","missing_controller","mist","mitre","mixture_med","mms","mobile","mobile_2","mobile_3","mobile_alert","mobile_arrow_down","mobile_arrow_right","mobile_arrow_up_right","mobile_block","mobile_camera","mobile_camera_front","mobile_camera_rear","mobile_cancel","mobile_cast","mobile_charge","mobile_chat","mobile_check","mobile_code","mobile_dock","mobile_dots","mobile_friendly","mobile_gear","mobile_hand","mobile_hand_left","mobile_hand_left_off","mobile_hand_off","mobile_info","mobile_landscape","mobile_layout","mobile_lock_landscape","mobile_lock_portrait","mobile_loupe","mobile_menu","mobile_off","mobile_question","mobile_rotate","mobile_rotate_lock","mobile_screen_share","mobile_screensaver","mobile_sensor_hi","mobile_sensor_lo","mobile_share","mobile_share_stack","mobile_sound","mobile_sound_2","mobile_sound_off","mobile_speaker","mobile_text","mobile_text_2","mobile_theft","mobile_ticket","mobile_unlock","mobile_vibrate","mobile_wrench","mobiledata_arrows","mobiledata_off","mode","mode_comment","mode_cool","mode_cool_off","mode_dual","mode_edit","mode_edit_outline","mode_fan","mode_fan_2","mode_fan_off","mode_heat","mode_heat_cool","mode_heat_off","mode_night","mode_of_travel","mode_off_on","mode_standby","model_training","modeling","monetization_on","money","money_bag","money_off","money_off_csred","money_range","monitor","monitor_heart","monitor_weight","monitor_weight_gain","monitor_weight_loss","monitoring","monochrome_photos","monorail","mood","mood_bad","mood_heart","moon_stars","mop","moped","moped_package","more","more_down","more_horiz","more_time","more_up","more_vert","mosque","motion_blur","motion_mode","motion_photos_auto","motion_photos_off","motion_photos_on","motion_photos_pause","motion_photos_paused","motion_play","motion_sensor_active","motion_sensor_alert","motion_sensor_idle","motion_sensor_urgent","motorcycle","mountain_flag","mountain_steam","mouse","mouse_lock","mouse_lock_off","move","move_down","move_group","move_item","move_location","move_selection_down","move_selection_left","move_selection_right","move_selection_up","move_to_inbox","move_up","moved_location","movie","movie_creation","movie_edit","movie_edit_off","movie_filter","movie_info","movie_off","movie_speaker","moving","moving_beds","moving_ministry","mp","multicooker","multiline_chart","multimodal_hand_eye","multiple_airports","multiple_stop","museum","music_cast","music_history","music_note","music_note_2","music_note_add","music_off","music_video","my_location","mystery","nat","nature","nature_people","navigate_before","navigate_next","navigation","near_me","near_me_disabled","nearby","nearby_error","nearby_off","nephrology","nest_audio","nest_cam_floodlight","nest_cam_indoor","nest_cam_iq","nest_cam_iq_outdoor","nest_cam_magnet_mount","nest_cam_outdoor","nest_cam_stand","nest_cam_wall_mount","nest_cam_wired_stand","nest_clock_farsight_analog","nest_clock_farsight_digital","nest_connect","nest_detect","nest_display","nest_display_max","nest_doorbell_visitor","nest_eco_leaf","nest_farsight_cool","nest_farsight_dual","nest_farsight_eco","nest_farsight_heat","nest_farsight_seasonal","nest_farsight_weather","nest_found_savings","nest_gale_wifi","nest_heat_link_e","nest_heat_link_gen_3","nest_hello_doorbell","nest_locator_tag","nest_mini","nest_multi_room","nest_protect","nest_remote","nest_remote_comfort_sensor","nest_secure_alarm","nest_sunblock","nest_tag","nest_thermostat","nest_thermostat_e_eu","nest_thermostat_gen_3","nest_thermostat_sensor","nest_thermostat_sensor_eu","nest_thermostat_zirconium_eu","nest_true_radiant","nest_wake_on_approach","nest_wake_on_press","nest_wifi_gale","nest_wifi_mistral","nest_wifi_point","nest_wifi_point_vento","nest_wifi_pro","nest_wifi_pro_2","nest_wifi_router","network_cell","network_check","network_intel_node","network_intelligence","network_intelligence_history","network_intelligence_update","network_locked","network_manage","network_node","network_ping","network_wifi","network_wifi_1_bar","network_wifi_1_bar_locked","network_wifi_2_bar","network_wifi_2_bar_locked","network_wifi_3_bar","network_wifi_3_bar_locked","network_wifi_locked","neurology","new_label","new_releases","new_window","news","newsmode","newspaper","newsstand","next_plan","next_week","nfc","nfc_off","night_shelter","night_sight_auto","night_sight_auto_off","night_sight_max","nightlife","nightlight","nightlight_round","nights_stay","no_accounts","no_adult_content","no_backpack","no_crash","no_drinks","no_encryption","no_encryption_gmailerrorred","no_flash","no_food","no_luggage","no_meals","no_meeting_room","no_photography","no_sim","no_sound","no_stroller","no_transfer","noise_aware","noise_control_off","noise_control_on","nordic_walking","north","north_east","north_west","not_accessible","not_accessible_forward","not_interested","not_listed_location","not_started","note","note_add","note_alt","note_stack","note_stack_add","notes","notification_add","notification_audio","notification_audio_off","notification_important","notification_multiple","notification_settings","notification_sound","notifications","notifications_active","notifications_none","notifications_off","notifications_paused","notifications_unread","numbers","nutrition","ods","odt","offline_bolt","offline_pin","offline_pin_off","offline_share","oil_barrel","okonomiyaki","on_device_training","on_hub_device","oncology","ondemand_video","online_prediction","onsen","opacity","open_in_browser","open_in_full","open_in_new","open_in_new_down","open_in_new_off","open_in_phone","open_jam","open_run","open_with","ophthalmology","oral_disease","orbit","order_approve","order_play","orders","orthopedics","other_admission","other_houses","outbound","outbox","outbox_alt","outdoor_garden","outdoor_grill","outgoing_mail","outlet","outlined_flag","outpatient","outpatient_med","output","output_circle","oven","oven_gen","overview","overview_key","owl","oxygen_saturation","p2p","pace","pacemaker","package","package_2","padding","padel","page_control","page_footer","page_header","page_info","page_menu_ios","pageless","pages","pageview","paid","palette","pallet","pan_tool","pan_tool_alt","pan_zoom","panorama","panorama_fish_eye","panorama_horizontal","panorama_photosphere","panorama_vertical","panorama_wide_angle","paragliding","parent_child_dining","park","parking_meter","parking_sign","parking_valet","partly_cloudy_day","partly_cloudy_night","partner_exchange","partner_heart","partner_reports","party_mode","passkey","passport","password","password_2","password_2_off","patient_list","pattern","pause","pause_circle","pause_circle_filled","pause_circle_outline","pause_presentation","payment","payment_arrow_down","payment_card","payments","pedal_bike","pediatrics","pen_size_1","pen_size_2","pen_size_3","pen_size_4","pen_size_5","pending","pending_actions","pentagon","people","people_alt","people_outline","percent","percent_discount","performance_max","pergola","perm_camera_mic","perm_contact_calendar","perm_data_setting","perm_device_information","perm_identity","perm_media","perm_phone_msg","perm_scan_wifi","person","person_2","person_3","person_4","person_add","person_add_alt","person_add_disabled","person_alert","person_apron","person_book","person_cancel","person_celebrate","person_check","person_edit","person_filled","person_heart","person_off","person_outline","person_pin","person_pin_circle","person_play","person_raised_hand","person_remove","person_search","person_shield","person_text","personal_bag","personal_bag_off","personal_bag_question","personal_injury","personal_places","personal_video","pest_control","pest_control_rodent","pet_supplies","pets","phishing","phone","phone_alt","phone_android","phone_bluetooth_speaker","phone_callback","phone_cancel","phone_disabled","phone_enabled","phone_forwarded","phone_in_talk","phone_iphone","phone_locked","phone_missed","phone_paused","phonelink","phonelink_erase","phonelink_lock","phonelink_off","phonelink_ring","phonelink_ring_off","phonelink_setup","photo","photo_album","photo_auto_merge","photo_camera","photo_camera_back","photo_camera_front","photo_filter","photo_frame","photo_library","photo_prints","photo_size_select_actual","photo_size_select_large","photo_size_select_small","php","physical_therapy","piano","piano_off","pickleball","picture_as_pdf","picture_in_picture","picture_in_picture_alt","picture_in_picture_center","picture_in_picture_large","picture_in_picture_medium","picture_in_picture_mobile","picture_in_picture_off","picture_in_picture_small","pie_chart","pie_chart_filled","pie_chart_outline","pie_chart_outlined","pill","pill_off","pin","pin_drop","pin_end","pin_history","pin_invoke","pin_road","pin_road_2","pinboard","pinboard_unread","pinch","pinch_zoom_in","pinch_zoom_out","pip","pip_exit","pivot_table_chart","place","place_item","plagiarism","plane_contrails","planet","planner_banner_ad_pt","planner_review","play_arrow","play_circle","play_disabled","play_for_work","play_lesson","play_music","play_pause","play_shapes","playground","playground_2","playing_cards","playlist_add","playlist_add_check","playlist_add_check_circle","playlist_add_circle","playlist_play","playlist_remove","plug_connect","plumbing","plus_one","podcasts","podiatry","podium","point_of_sale","point_scan","poker_chip","policy","policy_alert","poll","polyline","polymer","pool","portable_wifi_off","portrait","position_bottom_left","position_bottom_right","position_top_right","post","post_add","potted_plant","power","power_input","power_off","power_rounded","power_settings_circle","power_settings_new","prayer_times","precision_manufacturing","pregnancy","pregnant_woman","preliminary","prescriptions","present_to_all","preview","preview_off","price_change","price_check","print","print_add","print_connect","print_disabled","print_error","print_lock","priority","priority_high","privacy","privacy_tip","private_connectivity","problem","procedure","process_chart","production_quantity_limits","productivity","progress_activity","prompt_suggestion","propane","propane_tank","psychiatry","psychology","psychology_alt","public","public_off","publish","published_with_changes","pulmonology","pulse_alert","punch_clock","push_pin","qr_code","qr_code_2","qr_code_2_add","qr_code_scanner","query_builder","query_stats","question_answer","question_exchange","question_mark","queue","queue_music","queue_play_next","quick_phrases","quick_reference","quick_reference_all","quick_reorder","quickreply","quiet_time","quiet_time_active","quiz","r_mobiledata","radar","radio","radio_button_checked","radio_button_partial","radio_button_unchecked","radiology","railway_alert","railway_alert_2","rainy","rainy_heavy","rainy_light","rainy_snow","ramen_dining","ramp_left","ramp_right","range_hood","rate_review","rate_review_rtl","raven","raw_off","raw_on","read_more","readiness_score","real_estate_agent","rear_camera","rebase","rebase_edit","receipt","receipt_long","receipt_long_off","recent_actors","recent_patient","recenter","recommend","record_voice_over","rectangle","rectangle_add","recycling","redeem","redo","reduce_capacity","refresh","regular_expression","relax","release_alert","remember_me","reminder","reminders_alt","remote_gen","remove","remove_circle","remove_circle_outline","remove_done","remove_from_queue","remove_moderator","remove_red_eye","remove_road","remove_selection","remove_shopping_cart","reopen_window","reorder","repartition","repeat","repeat_on","repeat_one","repeat_one_on","replace_audio","replace_image","replace_video","replay","replay_10","replay_30","replay_5","replay_circle_filled","reply","reply_all","report","report_gmailerrorred","report_off","report_problem","request_page","request_quote","reset_brightness","reset_colors","reset_exposure","reset_focus","reset_image","reset_iso","reset_settings","reset_shadow","reset_shutter_speed","reset_tv","reset_white_balance","reset_wrench","resize","resize_window","respiratory_rate","responsive_layout","rest_area","restart_alt","restaurant","restaurant_menu","restore","restore_from_trash","restore_page","resume","reviews","rewarded_ads","rheumatology","rib_cage","rice_bowl","right_click","right_panel_close","right_panel_open","ring_volume","ring_volume_filled","ripples","road","robot","robot_2","rocket","rocket_launch","roller_shades","roller_shades_closed","roller_skating","roofing","room","room_preferences","room_service","rotate_90_degrees_ccw","rotate_90_degrees_cw","rotate_auto","rotate_left","rotate_right","roundabout_left","roundabout_right","rounded_corner","route","router","router_off","routine","rowing","rss_feed","rsvp","rtt","rubric","rule","rule_folder","rule_settings","run_circle","running_with_errors","rv_hookup","safety_check","safety_check_off","safety_divider","sailing","salinity","sanitizer","satellite","satellite_alt","sauna","save","save_alt","save_as","save_clock","saved_search","savings","scale","scan","scan_delete","scanner","scatter_plot","scene","schedule","schedule_send","schema","school","science","science_off","scooter","score","scoreboard","screen_lock_landscape","screen_lock_portrait","screen_lock_rotation","screen_record","screen_rotation","screen_rotation_alt","screen_rotation_up","screen_search_desktop","screen_share","screenshot","screenshot_frame","screenshot_frame_2","screenshot_keyboard","screenshot_monitor","screenshot_region","screenshot_tablet","script","scrollable_header","scuba_diving","sd","sd_card","sd_card_alert","sd_storage","sdk","search","search_activity","search_check","search_check_2","search_gear","search_hands_free","search_insights","search_off","seat_cool_left","seat_cool_right","seat_heat_left","seat_heat_right","seat_read","seat_vent_left","seat_vent_right","seat_window","security","security_key","security_update","security_update_good","security_update_warning","segment","select","select_all","select_check_box","select_to_speak","select_window","select_window_2","select_window_off","self_care","self_improvement","sell","sell_cloud","send","send_and_archive","send_money","send_time_extension","send_to_mobile","sensor_door","sensor_occupied","sensor_window","sensors","sensors_krx","sensors_krx_off","sensors_off","sentiment_calm","sentiment_content","sentiment_dissatisfied","sentiment_excited","sentiment_extremely_dissatisfied","sentiment_frustrated","sentiment_neutral","sentiment_sad","sentiment_satisfied","sentiment_satisfied_alt","sentiment_stressed","sentiment_very_dissatisfied","sentiment_very_satisfied","sentiment_worried","serif","server_person","service_toolbox","set_meal","settings","settings_accessibility","settings_account_box","settings_alert","settings_applications","settings_b_roll","settings_backup_restore","settings_bluetooth","settings_brightness","settings_cell","settings_cinematic_blur","settings_ethernet","settings_heart","settings_input_antenna","settings_input_component","settings_input_composite","settings_input_hdmi","settings_input_svideo","settings_motion_mode","settings_night_sight","settings_overscan","settings_panorama","settings_phone","settings_photo_camera","settings_power","settings_remote","settings_screen","settings_seating","settings_slow_motion","settings_suggest","settings_system_daydream","settings_timelapse","settings_video_camera","settings_voice","settop_component","severe_cold","shades","shades_closed","shadow","shadow_add","shadow_minus","shape_line","shape_recognition","shapes","share","share_eta","share_location","share_off","share_reviews","share_windows","shaved_ice","sheets_rtl","shelf_auto_hide","shelf_position","shelves","shield","shield_card","shield_lock","shield_locked","shield_moon","shield_person","shield_question","shield_radar","shield_toggle","shield_watch","shield_with_heart","shield_with_house","shift","shift_lock","shift_lock_off","shoe_cleats","shop","shop_2","shop_two","shopping_bag","shopping_bag_speed","shopping_basket","shopping_cart","shopping_cart_checkout","shopping_cart_off","shoppingmode","short_stay","short_text","shortcut","show_chart","shower","shuffle","shuffle_on","shutter_speed","shutter_speed_add","shutter_speed_minus","sick","side_navigation","sign_language","sign_language_2","sign_language_off","signal_cellular_0_bar","signal_cellular_1_bar","signal_cellular_2_bar","signal_cellular_3_bar","signal_cellular_4_bar","signal_cellular_add","signal_cellular_alt","signal_cellular_alt_1_bar","signal_cellular_alt_2_bar","signal_cellular_alt_off","signal_cellular_connected_no_internet_0_bar","signal_cellular_connected_no_internet_4_bar","signal_cellular_no_sim","signal_cellular_nodata","signal_cellular_null","signal_cellular_off","signal_cellular_pause","signal_disconnected","signal_wifi_0_bar","signal_wifi_4_bar","signal_wifi_4_bar_lock","signal_wifi_bad","signal_wifi_connected_no_internet_4","signal_wifi_off","signal_wifi_statusbar_4_bar","signal_wifi_statusbar_not_connected","signal_wifi_statusbar_null","signature","signpost","sim_card","sim_card_alert","sim_card_download","sim_card_lock","simulation","single_arrow","single_bed","sip","siren","siren_check","siren_open","siren_question","skateboarding","skeleton","skillet","skillet_cooktop","skip_next","skip_previous","skull","skull_list","slab_serif","sledding","sleep","sleep_score","slide_library","sliders","slideshow","slow_motion_video","smart_button","smart_card_reader","smart_card_reader_off","smart_display","smart_outlet","smart_screen","smart_toy","smartphone","smartphone_camera","smb_share","smoke_free","smoking_rooms","sms","sms_failed","snail","snippet_folder","snooze","snowboarding","snowflake","snowing","snowing_heavy","snowmobile","snowshoeing","soap","soba","social_distance","social_leaderboard","solar_power","solo_dining","sort","sort_by_alpha","sos","sound_detection_dog_barking","sound_detection_glass_break","sound_detection_loud_sound","sound_sampler","soundbar","soup_kitchen","source","source_environment","source_notes","south","south_america","south_east","south_west","spa","space_bar","space_dashboard","space_dashboard_2","spatial_audio","spatial_audio_off","spatial_speaker","spatial_tracking","speaker","speaker_2","speaker_group","speaker_notes","speaker_notes_off","speaker_phone","special_character","specific_gravity","speech_to_text","speech_to_text_2","speed","speed_0_25","speed_0_2x","speed_0_5","speed_0_5x","speed_0_75","speed_0_7x","speed_1_2","speed_1_25","speed_1_2x","speed_1_5","speed_1_5x","speed_1_75","speed_1_7x","speed_2","speed_2x","speed_3","speed_4","speed_camera","spellcheck","split_scene","split_scene_2","split_scene_down","split_scene_left","split_scene_right","split_scene_up","splitscreen","splitscreen_add","splitscreen_bottom","splitscreen_landscape","splitscreen_landscape_add","splitscreen_left","splitscreen_portrait","splitscreen_right","splitscreen_top","splitscreen_vertical_add","spo2","spoke","sports","sports_and_outdoors","sports_bar","sports_baseball","sports_basketball","sports_cricket","sports_esports","sports_football","sports_golf","sports_gymnastics","sports_handball","sports_hockey","sports_kabaddi","sports_martial_arts","sports_mma","sports_motorsports","sports_rugby","sports_score","sports_soccer","sports_tennis","sports_volleyball","sprinkler","sprint","sql","square","square_circle","square_dot","square_foot","ssid_chart","stack","stack_group","stack_hexagon","stack_off","stack_star","stacked_bar_chart","stacked_email","stacked_inbox","stacked_line_chart","stacks","stadia_controller","stadium","stairs","stairs_2","star","star_border","star_border_purple500","star_half","star_outline","star_purple500","star_rate","star_rate_half","star_shine","stars","stars_2","start","stat_0","stat_1","stat_2","stat_3","stat_minus_1","stat_minus_2","stat_minus_3","stay_current_landscape","stay_current_portrait","stay_primary_landscape","stay_primary_portrait","steering_wheel_cool","steering_wheel_heat","step","step_into","step_out","step_over","steppers","steps","stethoscope","stethoscope_arrow","stethoscope_check","sticker","sticker_add","sticky_note","sticky_note_2","stock_media","stockpot","stop","stop_circle","stop_screen_share","storage","store","store_mall_directory","storefront","storm","straight","straighten","strategy","stream","stream_apps","streetview","stress_management","strikethrough_s","stroke_full","stroke_partial","stroller","style","styler","stylus","stylus_brush","stylus_fountain_pen","stylus_highlighter","stylus_laser_pointer","stylus_note","stylus_pen","stylus_pencil","subdirectory_arrow_left","subdirectory_arrow_right","subheader","subject","subscript","subscriptions","subtitles","subtitles_gear","subtitles_off","subway","subway_walk","subwoofer","summarize","sunny","sunny_snowing","superscript","supervised_user_circle","supervised_user_circle_off","supervisor_account","support","support_agent","surfing","surgical","surround_sound","swap_calls","swap_driving_apps","swap_driving_apps_wheel","swap_horiz","swap_horizontal_circle","swap_vert","swap_vertical_circle","sweep","swipe","swipe_down","swipe_down_alt","swipe_left","swipe_left_2","swipe_left_alt","swipe_right","swipe_right_2","swipe_right_alt","swipe_up","swipe_up_alt","swipe_vertical","switch","switch_access","switch_access_2","switch_access_3","switch_access_shortcut","switch_access_shortcut_add","switch_account","switch_camera","switch_left","switch_off","switch_right","switch_video","switches","sword_rose","swords","symptoms","synagogue","sync","sync_alt","sync_arrow_down","sync_arrow_up","sync_desktop","sync_disabled","sync_lock","sync_problem","sync_saved_locally","sync_saved_locally_off","syringe","system_security_update","system_security_update_good","system_security_update_warning","system_update","system_update_alt","tab","tab_close","tab_close_inactive","tab_close_right","tab_duplicate","tab_group","tab_inactive","tab_move","tab_new_right","tab_recent","tab_search","tab_unselected","table","table_bar","table_chart","table_chart_view","table_convert","table_edit","table_eye","table_lamp","table_large","table_restaurant","table_rows","table_rows_narrow","table_sign","table_view","tablet","tablet_android","tablet_camera","tablet_mac","tabs","tactic","tag","tag_faces","takeout_dining","takeout_dining_2","tamper_detection_off","tamper_detection_on","tap_and_play","tapas","target","task","task_alt","tatami_seat","taunt","taxi_alert","team_dashboard","temp_preferences_custom","temp_preferences_eco","temple_buddhist","temple_hindu","tenancy","terminal","terminal_2","terminal_add","terrain","text_ad","text_ad_off","text_compare","text_decrease","text_fields","text_fields_alt","text_format","text_increase","text_rotate_up","text_rotate_vertical","text_rotation_angledown","text_rotation_angleup","text_rotation_down","text_rotation_none","text_select_end","text_select_jump_to_beginning","text_select_jump_to_end","text_select_move_back_character","text_select_move_back_word","text_select_move_down","text_select_move_forward_character","text_select_move_forward_word","text_select_move_up","text_select_start","text_snippet","text_to_speech","text_up","textsms","texture","texture_add","texture_minus","theater_comedy","theaters","thermometer","thermometer_add","thermometer_alert","thermometer_gain","thermometer_loss","thermometer_minus","thermostat","thermostat_arrow_down","thermostat_arrow_up","thermostat_auto","thermostat_carbon","things_to_do","thread_unread","threat_intelligence","thumb_down","thumb_down_alt","thumb_down_filled","thumb_down_off","thumb_down_off_alt","thumb_up","thumb_up_alt","thumb_up_filled","thumb_up_off","thumb_up_off_alt","thumbnail_bar","thumbs_up_double","thumbs_up_down","thunderstorm","tibia","tibia_alt","tile_large","tile_medium","tile_small","tilt_arrow_down","tilt_arrow_up","time_auto","time_to_leave","timelapse","timeline","timer","timer_1","timer_10","timer_10_alt_1","timer_10_select","timer_2","timer_3","timer_3_alt_1","timer_3_select","timer_5","timer_5_shutter","timer_arrow_down","timer_arrow_up","timer_off","timer_pause","timer_play","tips_and_updates","tire_repair","title","titlecase","toast","toc","today","toggle_off","toggle_on","token","toll","tonality","tonality_2","toolbar","tools_flat_head","tools_installation_kit","tools_ladder","tools_level","tools_phillips","tools_pliers_wire_stripper","tools_power_drill","tools_wrench","tooltip","tooltip_2","top_panel_close","top_panel_open","topic","tornado","total_dissolved_solids","touch_app","touch_double","touch_double_2","touch_long","touch_triple","touchpad_mouse","touchpad_mouse_off","tour","toys","toys_and_games","toys_fan","track_changes","trackpad_input","trackpad_input_2","trackpad_input_3","traffic","traffic_jam","trail_length","trail_length_medium","trail_length_short","train","tram","transcribe","transfer_within_a_station","transform","transgender","transit_enterexit","transit_ticket","transition_chop","transition_dissolve","transition_fade","transition_push","transition_slide","translate","translate_indic","transportation","travel","travel_explore","travel_luggage_and_bags","trending_down","trending_flat","trending_up","triangle_circle","trip","trip_origin","trolley","trolley_cable_car","trophy","troubleshoot","try","tsunami","tsv","tty","tune","tungsten","turn_left","turn_right","turn_sharp_left","turn_sharp_right","turn_slight_left","turn_slight_right","turned_in","turned_in_not","tv","tv_displays","tv_gen","tv_guide","tv_next","tv_off","tv_options_edit_channels","tv_options_input_settings","tv_remote","tv_signin","tv_with_assistant","two_pager","two_pager_store","two_wheeler","type_specimen","u_turn_left","u_turn_right","udon","ulna_radius","ulna_radius_alt","umbrella","unarchive","undereye","undo","unfold_less","unfold_less_double","unfold_more","unfold_more_double","ungroup","universal_currency","universal_currency_alt","universal_local","unknown_2","unknown_5","unknown_7","unknown_document","unknown_med","unlicense","unpaved_road","unpin","unpublished","unsubscribe","upcoming","update","update_disabled","upgrade","upi_pay","upload","upload_2","upload_file","uppercase","urology","usb","usb_off","user_attributes","vaccines","vacuum","vacuum_2","vacuum_2_on","valve","vape_free","vaping_rooms","variable_add","variable_insert","variable_remove","variables","ventilator","verified","verified_off","verified_user","vertical_align_bottom","vertical_align_center","vertical_align_top","vertical_distribute","vertical_shades","vertical_shades_closed","vertical_split","vibration","video_call","video_camera_back","video_camera_back_add","video_camera_front","video_camera_front_off","video_chat","video_file","video_frame_copy","video_frame_save","video_label","video_library","video_search","video_settings","video_stable","video_template","videocam","videocam_alert","videocam_off","videogame_asset","videogame_asset_off","view_agenda","view_apps","view_array","view_carousel","view_column","view_column_2","view_comfy","view_comfy_alt","view_compact","view_compact_alt","view_cozy","view_day","view_headline","view_in_ar","view_in_ar_new","view_in_ar_off","view_kanban","view_list","view_module","view_object_track","view_quilt","view_real_size","view_sidebar","view_stream","view_timeline","view_week","vignette","vignette_2","villa","visibility","visibility_lock","visibility_off","vital_signs","vitals","vo2_max","voice_chat","voice_chat_off","voice_over_off","voice_selection","voice_selection_off","voicemail","voicemail_2","volcano","volume_down","volume_down_alt","volume_mute","volume_off","volume_up","volunteer_activism","voting_chip","vpn_key","vpn_key_alert","vpn_key_off","vpn_lock","vpn_lock_2","vr180_create2d","vr180_create2d_off","vrpano","walk_bike","wall_art","wall_lamp","wallet","wallpaper","wallpaper_slideshow","wand_shine","wand_stars","ward","warehouse","warning","warning_amber","warning_off","wash","washoku","watch","watch_alert","watch_arrow","watch_arrow_down","watch_button","watch_button_press","watch_check","watch_later","watch_lock","watch_off","watch_screentime","watch_vibration","watch_wake","water","water_bottle","water_bottle_large","water_damage","water_do","water_drop","water_drops","water_ec","water_full","water_heater","water_lock","water_loss","water_lux","water_medium","water_orp","water_ph","water_pump","water_voc","waterfall_chart","waves","waving_hand","wb_auto","wb_cloudy","wb_incandescent","wb_iridescent","wb_shade","wb_sunny","wb_twilight","wb_twilight_2","wc","weather_hail","weather_mix","weather_snowy","web","web_asset","web_asset_off","web_stories","web_traffic","webhook","weekend","weight","west","whatshot","wheat","wheelchair_pickup","where_to_vote","widget_medium","widget_menu","widget_small","widget_width","widgets","width","width_full","width_normal","width_wide","wifi","wifi_1_bar","wifi_2_bar","wifi_add","wifi_calling","wifi_calling_1","wifi_calling_2","wifi_calling_3","wifi_calling_bar_1","wifi_calling_bar_2","wifi_calling_bar_3","wifi_channel","wifi_device","wifi_find","wifi_home","wifi_lock","wifi_notification","wifi_off","wifi_password","wifi_protected_setup","wifi_proxy","wifi_tethering","wifi_tethering_error","wifi_tethering_off","wind_power","window","window_closed","window_open","window_sensor","windshield_defrost_auto","windshield_defrost_front","windshield_defrost_rear","windshield_heat_front","wine_bar","woman","woman_2","work","work_alert","work_history","work_off","work_outline","work_update","workflow","workspace_premium","workspaces","workspaces_outline","wounds_injuries","wrap_text","wrist","wrong_location","wysiwyg","x_circle","y_circle","yakitori","yard","yoshoku","your_trips","youtube_activity","youtube_searched_for","zone_person_alert","zone_person_idle","zone_person_urgent","zoom_in","zoom_in_map","zoom_out","zoom_out_map"];function ta(){return"./fenix-icons.woff2"}const ra=ta(),aa="fenix-icons-font",Mt="fenix-icons";function It(){return`@font-face{font-family:'${j}';font-style:normal;font-weight:100 700;font-display:block;src:url('${ra}') format('woff2');}`}function Nt(){return It()+E}let M=!1;function oa(d=typeof document!="undefined"?document:void 0){if(M||!d)return;if(d.getElementById(Mt)){M=!0;return}const e=d.createElement("style");e.id=aa,e.textContent=Nt(),d.head.appendChild(e),M=!0}function jt(){M=!1}const Ft=E;function ia(){let d="";for(const e of Dt)d+=`.fx-icon-${e}::before{content:"${e}"}`;return d}function Pt(){return It()+Ft+ia()}let De=!1;function Vt(d=typeof document!="undefined"?document:void 0){if(De||!d)return;const e=d.createElement("style");e.id=Mt,e.textContent=Pt(),d.head.appendChild(e),De=!0}function sa(){De=!1,jt()}Vt();const I=Object.freeze(Object.defineProperty({__proto__:null,FENIX_ICON_BASE_CSS:E,FENIX_ICON_DOC_BASE_CSS:Ft,FENIX_ICON_FONT_FAMILY:j,FENIX_ICON_NAMES:Dt,__resetFenixIconsFontInjection:jt,__resetFenixIconsInjection:sa,buildFenixIconsCss:Pt,buildFenixIconsFontCss:Nt,isFenixIconName:q,loadFenixIcons:Vt,loadFenixIconsFont:oa},Symbol.toStringTag,{value:"Module"}))});
|
|
4238
|
+
`;let De=Lt;function sa(){return v("fx-accordion",De)}function na(){return v("fx-accordion-panel",qe)}sa(),na();const Rt=["10k","10mp","11mp","123","12mp","13mp","14mp","15mp","16mp","17mp","18_up_rating","18mp","19mp","1k","1k_plus","1x_mobiledata","1x_mobiledata_badge","20mp","21mp","22mp","23mp","24fps_select","24mp","2d","2d_2","2k","2k_plus","2mp","30fps","30fps_select","360","3d","3d_2","3d_rotation","3g_mobiledata","3g_mobiledata_badge","3k","3k_plus","3mp","3p","4g_mobiledata","4g_mobiledata_badge","4g_plus_mobiledata","4k","4k_plus","4mp","50mp","5g","5g_mobiledata_badge","5k","5k_plus","5mp","60fps","60fps_select","6_ft_apart","6k","6k_plus","6mp","7k","7k_plus","7mp","8k","8k_plus","8mp","9k","9k_plus","9mp","abc","ac_unit","access_alarm","access_alarms","access_time","access_time_filled","accessibility","accessibility_new","accessible","accessible_forward","accessible_menu","account_balance","account_balance_wallet","account_box","account_child","account_child_invert","account_circle","account_circle_filled","account_circle_off","account_tree","action_key","activity_zone","acupuncture","acute","ad","ad_group","ad_group_off","ad_off","ad_units","adaptive_audio_mic","adaptive_audio_mic_off","adb","add","add_2","add_a_photo","add_ad","add_alarm","add_alert","add_box","add_business","add_call","add_card","add_chart","add_circle","add_circle_outline","add_column_left","add_column_right","add_comment","add_diamond","add_home","add_home_work","add_ic_call","add_link","add_location","add_location_alt","add_moderator","add_notes","add_photo_alternate","add_reaction","add_road","add_row_above","add_row_below","add_shopping_cart","add_task","add_to_drive","add_to_home_screen","add_to_photos","add_to_queue","add_triangle","addchart","adf_scanner","adjust","admin_meds","admin_panel_settings","ads_click","agender","agriculture","air","air_freshener","air_purifier","air_purifier_gen","airline_seat_flat","airline_seat_flat_angled","airline_seat_individual_suite","airline_seat_legroom_extra","airline_seat_legroom_normal","airline_seat_legroom_reduced","airline_seat_recline_extra","airline_seat_recline_normal","airline_stops","airlines","airplane_ticket","airplanemode_active","airplanemode_inactive","airplay","airport_shuttle","airware","airwave","alarm","alarm_add","alarm_off","alarm_on","alarm_pause","alarm_smart_wake","album","align_center","align_end","align_flex_center","align_flex_end","align_flex_start","align_horizontal_center","align_horizontal_left","align_horizontal_right","align_items_stretch","align_justify_center","align_justify_flex_end","align_justify_flex_start","align_justify_space_around","align_justify_space_between","align_justify_space_even","align_justify_stretch","align_self_stretch","align_space_around","align_space_between","align_space_even","align_start","align_stretch","align_vertical_bottom","align_vertical_center","align_vertical_top","all_inbox","all_inclusive","all_match","all_out","allergies","allergy","alt_route","alternate_email","altitude","ambient_screen","ambulance","amend","amp_stories","analytics","anchor","android","android_cell_4_bar","android_cell_4_bar_alert","android_cell_4_bar_off","android_cell_4_bar_plus","android_cell_5_bar","android_cell_5_bar_alert","android_cell_5_bar_off","android_cell_5_bar_plus","android_cell_dual_4_bar","android_cell_dual_4_bar_alert","android_cell_dual_4_bar_plus","android_cell_dual_5_bar","android_cell_dual_5_bar_alert","android_cell_dual_5_bar_plus","android_wifi_3_bar","android_wifi_3_bar_alert","android_wifi_3_bar_lock","android_wifi_3_bar_off","android_wifi_3_bar_plus","android_wifi_3_bar_question","android_wifi_4_bar","android_wifi_4_bar_alert","android_wifi_4_bar_lock","android_wifi_4_bar_off","android_wifi_4_bar_plus","android_wifi_4_bar_question","animated_images","animation","announcement","antigravity","aod","aod_tablet","aod_watch","apartment","api","apk_document","apk_install","app_badging","app_blocking","app_promo","app_registration","app_settings_alt","app_shortcut","apparel","approval","approval_delegation","approval_delegation_off","apps","apps_outage","aq","aq_indoor","ar_on_you","ar_stickers","architecture","archive","area_chart","arming_countdown","arrow_and_edge","arrow_back","arrow_back_2","arrow_back_ios","arrow_back_ios_new","arrow_circle_down","arrow_circle_left","arrow_circle_right","arrow_circle_up","arrow_cool_down","arrow_downward","arrow_downward_alt","arrow_drop_down","arrow_drop_down_circle","arrow_drop_up","arrow_forward","arrow_forward_ios","arrow_insert","arrow_left","arrow_left_alt","arrow_menu_close","arrow_menu_open","arrow_or_edge","arrow_outward","arrow_range","arrow_right","arrow_right_alt","arrow_selector_tool","arrow_shape_up","arrow_shape_up_stack","arrow_shape_up_stack_2","arrow_split","arrow_top_left","arrow_top_right","arrow_upload_progress","arrow_upload_ready","arrow_upward","arrow_upward_alt","arrow_warm_up","arrows_input","arrows_left_right_circle","arrows_more_down","arrows_more_up","arrows_output","arrows_outward","arrows_up_down_circle","art_track","article","article_person","article_shortcut","artist","aspect_ratio","assessment","assignment","assignment_add","assignment_globe","assignment_ind","assignment_late","assignment_return","assignment_returned","assignment_turned_in","assist_walker","assistant","assistant_device","assistant_direction","assistant_navigation","assistant_on_hub","assistant_photo","assured_workload","asterisk","astrophotography_auto","astrophotography_off","atm","atr","attach_email","attach_file","attach_file_add","attach_file_off","attach_money","attachment","attractions","attribution","audio_capture","audio_description","audio_file","audio_video_receiver","audiotrack","auto_activity_zone","auto_awesome","auto_awesome_mosaic","auto_awesome_motion","auto_delete","auto_detect_voice","auto_draw_solid","auto_fix","auto_fix_high","auto_fix_normal","auto_fix_off","auto_graph","auto_label","auto_meeting_room","auto_mode","auto_read_pause","auto_read_play","auto_schedule","auto_stories","auto_stories_off","auto_timer","auto_towing","auto_transmission","auto_videocam","autofps_select","automation","autopause","autopay","autoplay","autorenew","autostop","av1","av_timer","avc","avg_pace","avg_time","avocado_bean","award_meal","award_star","azm","b_circle","baby_changing_station","back_hand","back_to_tab","background_dot_large","background_dot_small","background_grid_small","background_replace","backlight_high","backlight_high_off","backlight_low","backpack","backspace","backup","backup_table","badge","badge_critical_battery","badminton","bakery_dining","balance","balcony","ballot","bar_chart","bar_chart_4_bars","bar_chart_off","barcode","barcode_reader","barcode_scanner","barefoot","batch_prediction","bath_bedrock","bath_outdoor","bath_private","bath_public_large","bath_soak","bathroom","bathtub","battery_0_bar","battery_1_bar","battery_20","battery_2_bar","battery_30","battery_3_bar","battery_4_bar","battery_50","battery_5_bar","battery_60","battery_6_bar","battery_80","battery_90","battery_alert","battery_android_0","battery_android_1","battery_android_2","battery_android_3","battery_android_4","battery_android_5","battery_android_6","battery_android_alert","battery_android_bolt","battery_android_frame_1","battery_android_frame_2","battery_android_frame_3","battery_android_frame_4","battery_android_frame_5","battery_android_frame_6","battery_android_frame_alert","battery_android_frame_bolt","battery_android_frame_full","battery_android_frame_plus","battery_android_frame_question","battery_android_frame_share","battery_android_frame_shield","battery_android_full","battery_android_plus","battery_android_question","battery_android_share","battery_android_shield","battery_change","battery_charging_20","battery_charging_20_2","battery_charging_30","battery_charging_30_2","battery_charging_50","battery_charging_50_2","battery_charging_60","battery_charging_60_2","battery_charging_80","battery_charging_80_2","battery_charging_90","battery_charging_full","battery_charging_full_2","battery_error","battery_full","battery_full_alt","battery_horiz_000","battery_horiz_050","battery_horiz_075","battery_low","battery_plus","battery_profile","battery_saver","battery_share","battery_status_good","battery_std","battery_unknown","battery_vert_005","battery_vert_020","battery_vert_050","battery_very_low","beach_access","bed","bedroom_baby","bedroom_child","bedroom_parent","bedtime","bedtime_off","beenhere","beer_meal","bento","bia","bid_landscape","bid_landscape_disabled","bigtop_updates","bike_dock","bike_lane","bike_scooter","biotech","blanket","blender","blind","blinds","blinds_2","blinds_2_closed","blinds_closed","block","blood_pressure","bloodtype","bluetooth","bluetooth_audio","bluetooth_connected","bluetooth_disabled","bluetooth_drive","bluetooth_searching","blur_circular","blur_linear","blur_medium","blur_off","blur_on","blur_short","boat_bus","boat_railway","body_fat","body_system","bolt","bolt_boost","bomb","book","book_2","book_3","book_4","book_5","book_6","book_online","book_ribbon","bookmark","bookmark_add","bookmark_added","bookmark_bag","bookmark_border","bookmark_check","bookmark_flag","bookmark_heart","bookmark_manager","bookmark_remove","bookmark_stacks","bookmark_star","bookmarks","books_movies_and_music","border_all","border_bottom","border_clear","border_color","border_horizontal","border_inner","border_left","border_outer","border_right","border_style","border_top","border_vertical","borg","bottom_app_bar","bottom_drawer","bottom_navigation","bottom_panel_close","bottom_panel_open","bottom_right_click","bottom_sheets","box","box_add","box_edit","boy","brand_awareness","brand_family","branding_watermark","breakfast_dining","breaking_news","breaking_news_alt_1","breastfeeding","brick","briefcase_meal","brightness_1","brightness_2","brightness_3","brightness_4","brightness_5","brightness_6","brightness_7","brightness_alert","brightness_auto","brightness_empty","brightness_high","brightness_low","brightness_medium","bring_your_own_ip","broadcast_on_home","broadcast_on_personal","broken_image","browse","browse_activity","browse_gallery","browser_not_supported","browser_updated","brunch_dining","brush","bubble","bubble_chart","bubbles","bucket_check","bug_report","build","build_circle","bullet_chart","bungalow","burst_mode","bus_alert","bus_map_pin","bus_railway","business","business_center","business_chip","business_messages","buttons_alt","cabin","cable","cable_car","cached","cadence","cake","cake_add","calculate","calendar_add_on","calendar_apps_script","calendar_check","calendar_clock","calendar_lock","calendar_meal","calendar_meal_2","calendar_month","calendar_today","calendar_view_day","calendar_view_month","calendar_view_week","call","call_end","call_end_alt","call_log","call_made","call_merge","call_missed","call_missed_outgoing","call_quality","call_received","call_split","call_to_action","camera","camera_alt","camera_enhance","camera_front","camera_indoor","camera_outdoor","camera_rear","camera_roll","camera_video","cameraswitch","campaign","camping","cancel","cancel_presentation","cancel_schedule_send","candle","candlestick_chart","cannabis","captive_portal","capture","car_crash","car_defrost_left","car_defrost_low_left","car_defrost_low_right","car_defrost_mid_left","car_defrost_mid_low_left","car_defrost_mid_low_right","car_defrost_mid_right","car_defrost_right","car_fan_low_left","car_fan_low_mid_left","car_fan_low_right","car_fan_mid_left","car_fan_mid_low_right","car_fan_mid_right","car_fan_recirculate","car_fan_recirculate_2","car_gear","car_lock","car_mirror_heat","car_rental","car_repair","car_seat_off","car_tag","card_giftcard","card_membership","card_travel","cardio_load","cardiology","cards","cards_stack","cards_star","carpenter","carry_on_bag","carry_on_bag_checked","carry_on_bag_inactive","carry_on_bag_question","cases","casino","cast","cast_connected","cast_for_education","cast_pause","cast_warning","castle","category","category_search","celebration","cell_merge","cell_tower","cell_wifi","center_focus_strong","center_focus_weak","chair","chair_alt","chair_counter","chair_fireplace","chair_umbrella","chalet","change_circle","change_history","charger","charging_station","chart_data","chat","chat_add_on","chat_apps_script","chat_bubble","chat_bubble_off","chat_bubble_outline","chat_dashed","chat_error","chat_info","chat_paste_go","chat_paste_go_2","check","check_alert","check_box","check_box_outline_blank","check_circle","check_circle_filled","check_circle_outline","check_circle_unread","check_in_out","check_indeterminate_small","check_small","checkbook","checked_bag","checked_bag_question","checklist","checklist_rtl","checkroom","cheer","chef_hat","chess","chess_bishop","chess_bishop_2","chess_king","chess_king_2","chess_knight","chess_pawn","chess_pawn_2","chess_queen","chess_rook","chevron_backward","chevron_forward","chevron_left","chevron_line_up","chevron_right","child_care","child_friendly","child_hat","chip_extraction","chips","chrome_reader_mode","chromecast_2","chromecast_device","chronic","church","cinematic_blur","circle","circle_circle","circle_notifications","circles","circles_ext","clarify","class","clean_hands","cleaning","cleaning_bucket","cleaning_services","clear","clear_all","clear_day","clear_night","climate_mini_split","clinical_notes","clock_arrow_down","clock_arrow_up","clock_loader_10","clock_loader_20","clock_loader_40","clock_loader_60","clock_loader_80","clock_loader_90","close","close_fullscreen","close_small","closed_caption","closed_caption_add","closed_caption_disabled","closed_caption_off","cloud","cloud_alert","cloud_circle","cloud_done","cloud_download","cloud_lock","cloud_off","cloud_queue","cloud_sync","cloud_upload","cloudy","cloudy_filled","cloudy_snowing","co2","co_present","code","code_blocks","code_off","code_xml","coffee","coffee_maker","cognition","cognition_2","collapse_all","collapse_content","collections","collections_bookmark","color_lens","colorize","colors","combine_columns","comedy_mask","comic_bubble","comment","comment_bank","comments_disabled","commit","communication","communities","communities_filled","commute","compare","compare_arrows","compass_calibration","component_exchange","compost","compress","computer","computer_arrow_up","computer_cancel","computer_sound","concierge","conditions","confirmation_number","congenital","connect_without_contact","connected_tv","connecting_airports","construction","contact_emergency","contact_mail","contact_page","contact_phone","contact_phone_filled","contact_support","contactless","contactless_off","contacts","contacts_product","content_copy","content_cut","content_paste","content_paste_go","content_paste_off","content_paste_search","contextual_token","contextual_token_add","contract","contract_delete","contract_edit","contrast","contrast_circle","contrast_rtl_off","contrast_square","control_camera","control_point","control_point_duplicate","controller_gen","conversation","conversion_path","conversion_path_off","convert_to_text","conveyor_belt","cookie","cookie_off","cooking","cool_to_dry","copy_all","copyright","coronavirus","corporate_fare","cottage","counter_0","counter_1","counter_2","counter_3","counter_4","counter_5","counter_6","counter_7","counter_8","counter_9","countertops","create","create_new_folder","credit_card","credit_card_clock","credit_card_gear","credit_card_heart","credit_card_off","credit_score","crib","crisis_alert","crop","crop_16_9","crop_21_9","crop_2_3","crop_3_2","crop_5_4","crop_7_5","crop_9_16","crop_din","crop_free","crop_landscape","crop_original","crop_portrait","crop_rotate","crop_square","crossword","crowdsource","crown","cruelty_free","css","csv","currency_bitcoin","currency_exchange","currency_franc","currency_lira","currency_pound","currency_ruble","currency_rupee","currency_rupee_circle","currency_yen","currency_yuan","curtains","curtains_closed","custom_typography","cut","cycle","cyclone","dangerous","dark_mode","dashboard","dashboard_2","dashboard_2_add","dashboard_2_edit","dashboard_2_gear","dashboard_customize","data_alert","data_array","data_check","data_exploration","data_info_alert","data_loss_prevention","data_object","data_saver_off","data_saver_on","data_table","data_thresholding","data_usage","database","database_off","database_search","database_upload","dataset","dataset_linked","date_range","deblur","deceased","decimal_decrease","decimal_increase","deck","dehaze","delete","delete_forever","delete_history","delete_outline","delete_sweep","delivery_dining","delivery_truck_bolt","delivery_truck_speed","demography","density_large","density_medium","density_small","dentistry","departure_board","deployed_code","deployed_code_account","deployed_code_alert","deployed_code_history","deployed_code_update","dermatology","description","deselect","design_services","desk","deskphone","desktop_access_disabled","desktop_cloud","desktop_cloud_stack","desktop_landscape","desktop_landscape_add","desktop_mac","desktop_portrait","desktop_windows","destruction","details","detection_and_zone","detection_and_zone_off","detector","detector_alarm","detector_battery","detector_co","detector_offline","detector_smoke","detector_status","developer_board","developer_board_off","developer_guide","developer_mode","developer_mode_tv","device_band","device_hub","device_reset","device_thermostat","device_unknown","devices","devices_fold","devices_fold_2","devices_off","devices_other","devices_wearables","dew_point","diagnosis","diagonal_line","dialer_sip","dialogs","dialpad","diamond","diamond_shine","dictionary","difference","digital_out_of_home","digital_wellbeing","dine_heart","dine_in","dine_lamp","dining","dinner_dining","directions","directions_alt","directions_alt_off","directions_bike","directions_boat","directions_boat_filled","directions_bus","directions_bus_filled","directions_car","directions_car_filled","directions_off","directions_railway","directions_railway_2","directions_railway_filled","directions_run","directions_subway","directions_subway_filled","directions_transit","directions_transit_filled","directions_walk","directory_sync","dirty_lens","disabled_by_default","disabled_visible","disc_full","discover_tune","dishwasher","dishwasher_gen","display_add","display_external_input","display_settings","distance","diversity_1","diversity_2","diversity_3","diversity_4","dns","do_disturb","do_disturb_alt","do_disturb_off","do_disturb_on","do_not_disturb","do_not_disturb_alt","do_not_disturb_off","do_not_disturb_on","do_not_disturb_on_total_silence","do_not_step","do_not_touch","dock","dock_to_bottom","dock_to_left","dock_to_right","docs","docs_add_on","docs_apps_script","document_scanner","document_search","domain","domain_add","domain_disabled","domain_disabled_check","domain_verification","domain_verification_off","domino_mask","done","done_all","done_outline","donut_large","donut_small","door_back","door_front","door_open","door_sensor","door_sliding","doorbell","doorbell_3p","doorbell_chime","double_arrow","downhill_skiing","download","download_2","download_done","download_for_offline","downloading","draft","draft_orders","drafts","drag_click","drag_handle","drag_indicator","drag_pan","draw","draw_abstract","draw_collage","drawing_recognition","dresser","drive_eta","drive_export","drive_file_move","drive_file_move_outline","drive_file_move_rtl","drive_file_rename","drive_file_rename_outline","drive_folder_upload","drone","drone_2","dropdown","dropdown_menu","dropper_eye","dry","dry_cleaning","dual_screen","duo","dvr","dynamic_feed","dynamic_form","e911_avatar","e911_emergency","e_mobiledata","e_mobiledata_badge","ear_sound","earbud_case","earbud_left","earbud_right","earbuds","earbuds_2","earbuds_battery","early_on","earthquake","east","ecg","ecg_heart","eco","eda","edgesensor_high","edgesensor_low","edit","edit_arrow_down","edit_arrow_up","edit_attributes","edit_audio","edit_calendar","edit_document","edit_location","edit_location_alt","edit_note","edit_notifications","edit_off","edit_road","edit_square","editor_choice","egg","egg_alt","eject","elderly","elderly_woman","electric_bike","electric_bolt","electric_car","electric_meter","electric_moped","electric_rickshaw","electric_scooter","electrical_services","elevation","elevator","email","emergency","emergency_heat","emergency_heat_2","emergency_home","emergency_recording","emergency_share","emergency_share_off","emoji_emotions","emoji_events","emoji_flags","emoji_food_beverage","emoji_language","emoji_nature","emoji_objects","emoji_people","emoji_symbols","emoji_transportation","emoticon","empty_dashboard","enable","encrypted","encrypted_add","encrypted_add_circle","encrypted_minus_circle","encrypted_off","endocrinology","energy","energy_program_saving","energy_program_time_used","energy_savings_leaf","engineering","enhanced_encryption","ent","enterprise","enterprise_off","equal","equalizer","eraser_size_1","eraser_size_2","eraser_size_3","eraser_size_4","eraser_size_5","error","error_circle_rounded","error_med","error_outline","escalator","escalator_warning","euro","euro_symbol","ev_charger","ev_mobiledata_badge","ev_shadow","ev_shadow_add","ev_shadow_minus","ev_station","event","event_available","event_busy","event_list","event_note","event_repeat","event_seat","event_upcoming","exclamation","exercise","exit_to_app","expand","expand_all","expand_circle_down","expand_circle_right","expand_circle_up","expand_content","expand_less","expand_more","expansion_panels","expension_panels","experiment","explicit","explore","explore_nearby","explore_off","explosion","export_notes","exposure","exposure_neg_1","exposure_neg_2","exposure_plus_1","exposure_plus_2","exposure_zero","extension","extension_off","eye_tracking","eyebrow","eyeglasses","eyeglasses_2","eyeglasses_2_sound","eyeglasses_3","face","face_2","face_3","face_4","face_5","face_6","face_down","face_left","face_nod","face_retouching_natural","face_retouching_off","face_right","face_shake","face_unlock","face_up","fact_check","factory","falling","familiar_face_and_zone","family_group","family_history","family_home","family_link","family_restroom","family_star","fan_focus","fan_indirect","farsight_digital","fast_forward","fast_rewind","fastfood","faucet","favorite","favorite_border","fax","feature_search","featured_play_list","featured_seasonal_and_gifts","featured_video","feed","feedback","female","femur","femur_alt","fence","fertile","festival","fiber_dvr","fiber_manual_record","fiber_new","fiber_pin","fiber_smart_record","file_copy","file_copy_off","file_download","file_download_done","file_download_off","file_export","file_json","file_map","file_map_stack","file_open","file_png","file_present","file_save","file_save_off","file_upload","file_upload_off","files","filter","filter_1","filter_2","filter_3","filter_4","filter_5","filter_6","filter_7","filter_8","filter_9","filter_9_plus","filter_alt","filter_alt_off","filter_arrow_right","filter_b_and_w","filter_center_focus","filter_drama","filter_frames","filter_hdr","filter_list","filter_list_alt","filter_list_off","filter_none","filter_retrolux","filter_tilt_shift","filter_vintage","finance","finance_chip","finance_mode","find_in_page","find_replace","fingerprint","fingerprint_off","fire_check","fire_extinguisher","fire_hydrant","fire_truck","fireplace","first_page","fit_page","fit_page_height","fit_page_width","fit_screen","fit_width","fitness_center","fitness_tracker","fitness_trackers","flag","flag_2","flag_check","flag_circle","flag_filled","flaky","flare","flash_auto","flash_off","flash_on","flashlight_off","flashlight_on","flatware","flex_direction","flex_no_wrap","flex_wrap","flight","flight_class","flight_land","flight_takeoff","flights_and_hotels","flightsmode","flip","flip_camera_android","flip_camera_ios","flip_to_back","flip_to_front","float_landscape_2","float_portrait_2","flood","floor","floor_lamp","flourescent","flowchart","flowsheet","fluid","fluid_balance","fluid_med","fluorescent","flutter","flutter_dash","flyover","fmd_bad","fmd_good","foggy","folded_hands","folder","folder_check","folder_check_2","folder_code","folder_copy","folder_data","folder_delete","folder_eye","folder_info","folder_limited","folder_managed","folder_match","folder_off","folder_open","folder_shared","folder_special","folder_supervised","folder_zip","follow_the_signs","font_download","font_download_off","food_bank","foot_bones","footprint","for_you","forest","fork_chart","fork_left","fork_right","fork_spoon","forklift","format_align_center","format_align_justify","format_align_left","format_align_right","format_bold","format_clear","format_color_fill","format_color_reset","format_color_text","format_h1","format_h2","format_h3","format_h4","format_h5","format_h6","format_image_back","format_image_break_left","format_image_break_right","format_image_front","format_image_inline_left","format_image_inline_right","format_image_left","format_image_right","format_indent_decrease","format_indent_increase","format_ink_highlighter","format_italic","format_letter_spacing","format_letter_spacing_2","format_letter_spacing_standard","format_letter_spacing_wide","format_letter_spacing_wider","format_line_spacing","format_list_bulleted","format_list_bulleted_add","format_list_numbered","format_list_numbered_rtl","format_overline","format_paint","format_paint_off","format_paragraph","format_quote","format_quote_off","format_shapes","format_size","format_strikethrough","format_text_clip","format_text_overflow","format_text_wrap","format_textdirection_l_to_r","format_textdirection_r_to_l","format_textdirection_vertical","format_underlined","format_underlined_squiggle","forms_add_on","forms_apps_script","fort","forum","forward","forward_10","forward_30","forward_5","forward_circle","forward_media","forward_to_inbox","foundation","fragrance","frame_bug","frame_exclamation","frame_inspect","frame_person","frame_person_mic","frame_person_off","frame_reload","frame_source","free_breakfast","free_cancellation","front_hand","front_loader","full_coverage","full_hd","full_stacked_bar_chart","fullscreen","fullscreen_exit","fullscreen_portrait","function","functions","funicular","g_mobiledata","g_mobiledata_badge","g_translate","gallery_thumbnail","game_bumper_left","game_bumper_right","game_button_l","game_button_l1","game_button_l2","game_button_r","game_button_r1","game_button_r2","game_button_zl","game_button_zr","game_stick_l3","game_stick_left","game_stick_r3","game_stick_right","game_trigger_left","game_trigger_right","gamepad","gamepad_circle_down","gamepad_circle_left","gamepad_circle_right","gamepad_circle_up","gamepad_down","gamepad_left","gamepad_right","gamepad_up","games","garage","garage_check","garage_door","garage_door_open","garage_home","garage_money","garden_cart","gas_meter","gastroenterology","gate","gavel","general_device","generating_tokens","genetics","genres","gesture","gesture_select","get_app","gif","gif_2","gif_box","girl","gite","glass_cup","globe","globe_2_cancel","globe_2_question","globe_asia","globe_book","globe_clock","globe_location_pin","globe_uk","glucose","glyphs","go_to_line","golf_course","gondola_lift","google_home_devices","google_plus_reshare","google_tv_remote","google_wifi","gpp_bad","gpp_good","gpp_maybe","gps_fixed","gps_not_fixed","gps_off","grade","gradient","grading","grain","graph_1","graph_2","graph_3","graph_4","graph_5","graph_6","graph_7","graph_8","graphic_eq","graphic_eq_off","grass","grid_3x3","grid_3x3_off","grid_4x4","grid_goldenratio","grid_guides","grid_layout_side","grid_off","grid_on","grid_view","grocery","group","group_add","group_off","group_remove","group_search","group_work","grouped_bar_chart","groups","groups_2","groups_3","guardian","gynecology","h_mobiledata","h_mobiledata_badge","h_plus_mobiledata","h_plus_mobiledata_badge","hail","hallway","hanami_dango","hand_bones","hand_gesture","hand_gesture_off","hand_meal","hand_package","handheld_controller","handshake","handwriting_recognition","handyman","hangout_video","hangout_video_off","hard_disk","hard_drive","hard_drive_2","hardware","hd","hdr_auto","hdr_auto_select","hdr_enhanced_select","hdr_off","hdr_off_select","hdr_on","hdr_on_select","hdr_plus","hdr_plus_off","hdr_strong","hdr_weak","head_mounted_device","headphones","headphones_battery","headset","headset_mic","headset_off","healing","health_and_beauty","health_and_safety","health_cross","health_metrics","heap_snapshot_large","heap_snapshot_multiple","heap_snapshot_thumbnail","hearing","hearing_aid","hearing_aid_disabled","hearing_aid_disabled_left","hearing_aid_left","hearing_disabled","heart_broken","heart_check","heart_minus","heart_plus","heart_smile","heat","heat_pump","heat_pump_balance","height","helicopter","help","help_center","help_clinic","help_outline","hematology","hevc","hexagon","hide","hide_image","hide_source","high_chair","high_density","high_quality","high_quality_off","high_res","highlight","highlight_alt","highlight_keyboard_focus","highlight_mouse_cursor","highlight_off","highlight_text_cursor","highlighter_size_1","highlighter_size_2","highlighter_size_3","highlighter_size_4","highlighter_size_5","hiking","history","history_2","history_edu","history_off","history_toggle_off","hive","hls","hls_off","holiday_village","home","home_and_garden","home_app_logo","home_filled","home_health","home_improvement_and_tools","home_iot_device","home_max","home_max_dots","home_mini","home_pin","home_repair_service","home_speaker","home_storage","home_storage_gear","home_work","horizontal_align_center","horizontal_align_left","horizontal_align_right","horizontal_distribute","horizontal_rule","horizontal_split","host","hot_tub","hotel","hotel_class","hourglass","hourglass_arrow_down","hourglass_arrow_up","hourglass_bottom","hourglass_check","hourglass_disabled","hourglass_empty","hourglass_full","hourglass_pause","hourglass_top","house","house_siding","house_with_shield","houseboat","household_supplies","hov","how_to_reg","how_to_vote","hr_resting","html","http","https","hub","humerus","humerus_alt","humidity_high","humidity_indoor","humidity_low","humidity_mid","humidity_percentage","hvac","hvac_max_defrost","ice_skating","icecream","id_card","id_card_2","identity_aware_proxy","identity_platform","ifl","iframe","iframe_off","image","image_arrow_up","image_aspect_ratio","image_inset","image_not_supported","image_search","imagesearch_roller","imagesmode","immunology","import_contacts","import_export","important_devices","in_home_mode","inactive_order","inbox","inbox_customize","inbox_text","inbox_text_asterisk","inbox_text_person","inbox_text_share","incomplete_circle","indeterminate_check_box","indeterminate_question_box","info","info_i","infrared","ink_eraser","ink_eraser_off","ink_highlighter","ink_highlighter_move","ink_highlighter_off","ink_marker","ink_pen","ink_selection","inpatient","input","input_circle","insert_chart","insert_chart_filled","insert_chart_outlined","insert_comment","insert_drive_file","insert_emoticon","insert_invitation","insert_link","insert_page_break","insert_photo","insert_text","insights","install_desktop","install_mobile","instant_mix","integration_instructions","interactive_space","interests","interpreter_mode","inventory","inventory_2","invert_colors","invert_colors_off","ios","ios_share","iron","iso","jamboard_kiosk","japanese_curry","japanese_flag","javascript","jewelry","join","join_full","join_inner","join_left","join_right","joystick","jump_to_element","kanji_alcohol","kayaking","kebab_dining","keep","keep_off","keep_pin","keep_public","kettle","key","key_off","key_vertical","key_visualizer","keyboard","keyboard_alt","keyboard_arrow_down","keyboard_arrow_left","keyboard_arrow_right","keyboard_arrow_up","keyboard_backspace","keyboard_capslock","keyboard_capslock_badge","keyboard_command_key","keyboard_control_key","keyboard_double_arrow_down","keyboard_double_arrow_left","keyboard_double_arrow_right","keyboard_double_arrow_up","keyboard_external_input","keyboard_full","keyboard_hide","keyboard_keys","keyboard_lock","keyboard_lock_off","keyboard_off","keyboard_onscreen","keyboard_option_key","keyboard_previous_language","keyboard_return","keyboard_tab","keyboard_tab_rtl","keyboard_voice","kid_star","king_bed","kitchen","kitesurfing","lab_panel","lab_profile","lab_research","label","label_important","label_important_outline","label_off","label_outline","labs","lan","landscape","landscape_2","landscape_2_edit","landscape_2_off","landslide","language","language_chinese_array","language_chinese_cangjie","language_chinese_dayi","language_chinese_pinyin","language_chinese_quick","language_chinese_wubi","language_french","language_gb_english","language_international","language_japanese_kana","language_korean_latin","language_pinyin","language_spanish","language_us","language_us_colemak","language_us_dvorak","laps","laptop","laptop_car","laptop_chromebook","laptop_mac","laptop_windows","lasso_select","last_page","launch","laundry","layers","layers_clear","lda","leaderboard","leak_add","leak_remove","left_click","left_panel_close","left_panel_open","legend_toggle","lens","lens_blur","letter_switch","library_add","library_add_check","library_books","library_music","license","lift_to_talk","light","light_group","light_group_2","light_mode","light_mode_auto","light_off","lightbulb","lightbulb_2","lightbulb_circle","lightbulb_outline","lightning_stand","lightstrip","line_axis","line_curve","line_end","line_end_arrow","line_end_arrow_notch","line_end_circle","line_end_diamond","line_end_square","line_start","line_start_arrow","line_start_arrow_notch","line_start_circle","line_start_diamond","line_start_square","line_style","line_weight","linear_scale","link","link_2","link_off","linked_camera","linked_services","lips","liquor","list","list_2","list_alt","list_alt_add","list_alt_check","list_arrow","lists","live_help","live_tv","living","local_activity","local_airport","local_atm","local_bar","local_cafe","local_car_wash","local_convenience_store","local_dining","local_drink","local_fire_department","local_florist","local_gas_station","local_grocery_store","local_hospital","local_hotel","local_laundry_service","local_library","local_mall","local_movies","local_offer","local_parking","local_pharmacy","local_phone","local_pizza","local_play","local_police","local_post_office","local_printshop","local_see","local_shipping","local_taxi","location_automation","location_away","location_chip","location_city","location_disabled","location_home","location_off","location_on","location_pin","location_searching","locator_tag","lock","lock_clock","lock_open","lock_open_circle","lock_open_right","lock_outline","lock_person","lock_reset","login","logo_dev","logout","looks","looks_3","looks_4","looks_5","looks_6","looks_one","looks_two","loop","loupe","low_density","low_priority","lowercase","loyalty","lte_mobiledata","lte_mobiledata_badge","lte_plus_mobiledata","lte_plus_mobiledata_badge","luggage","lunch_dining","lyrics","macro_auto","macro_off","magic_button","magic_exchange","magic_tether","magnification_large","magnification_small","magnify_docked","magnify_fullscreen","mail","mail_asterisk","mail_lock","mail_off","mail_outline","mail_shield","male","man","man_2","man_3","man_4","manage_accounts","manage_history","manage_search","manga","manufacturing","map","map_pin_heart","map_pin_review","map_search","maps_home_work","maps_ugc","margin","mark_as_unread","mark_chat_read","mark_chat_unread","mark_email_read","mark_email_unread","mark_unread_chat_alt","markdown","markdown_copy","markdown_paste","markunread","markunread_mailbox","masked_transitions","masked_transitions_add","masks","massage","match_case","match_case_off","match_word","matter","maximize","meal_dinner","meal_lunch","measuring_tape","media_bluetooth_off","media_bluetooth_on","media_link","media_output","media_output_off","mediation","medical_information","medical_mask","medical_services","medication","medication_liquid","meeting_room","memory","memory_alt","menstrual_health","menu","menu_book","menu_book_2","menu_open","merge","merge_type","message","metabolism","metro","mfg_nest_yale_lock","mic","mic_alert","mic_double","mic_external_off","mic_external_on","mic_gear","mic_none","mic_off","microbiology","microwave","microwave_gen","military_tech","mimo","mimo_disconnect","mindfulness","minimize","minor_crash","mintmark","missed_video_call","missed_video_call_filled","missing_controller","mist","mitre","mixture_med","mms","mobile","mobile_2","mobile_3","mobile_alert","mobile_arrow_down","mobile_arrow_right","mobile_arrow_up_right","mobile_block","mobile_camera","mobile_camera_front","mobile_camera_rear","mobile_cancel","mobile_cast","mobile_charge","mobile_chat","mobile_check","mobile_code","mobile_dock","mobile_dots","mobile_friendly","mobile_gear","mobile_hand","mobile_hand_left","mobile_hand_left_off","mobile_hand_off","mobile_info","mobile_landscape","mobile_layout","mobile_lock_landscape","mobile_lock_portrait","mobile_loupe","mobile_menu","mobile_off","mobile_question","mobile_rotate","mobile_rotate_lock","mobile_screen_share","mobile_screensaver","mobile_sensor_hi","mobile_sensor_lo","mobile_share","mobile_share_stack","mobile_sound","mobile_sound_2","mobile_sound_off","mobile_speaker","mobile_text","mobile_text_2","mobile_theft","mobile_ticket","mobile_unlock","mobile_vibrate","mobile_wrench","mobiledata_arrows","mobiledata_off","mode","mode_comment","mode_cool","mode_cool_off","mode_dual","mode_edit","mode_edit_outline","mode_fan","mode_fan_2","mode_fan_off","mode_heat","mode_heat_cool","mode_heat_off","mode_night","mode_of_travel","mode_off_on","mode_standby","model_training","modeling","monetization_on","money","money_bag","money_off","money_off_csred","money_range","monitor","monitor_heart","monitor_weight","monitor_weight_gain","monitor_weight_loss","monitoring","monochrome_photos","monorail","mood","mood_bad","mood_heart","moon_stars","mop","moped","moped_package","more","more_down","more_horiz","more_time","more_up","more_vert","mosque","motion_blur","motion_mode","motion_photos_auto","motion_photos_off","motion_photos_on","motion_photos_pause","motion_photos_paused","motion_play","motion_sensor_active","motion_sensor_alert","motion_sensor_idle","motion_sensor_urgent","motorcycle","mountain_flag","mountain_steam","mouse","mouse_lock","mouse_lock_off","move","move_down","move_group","move_item","move_location","move_selection_down","move_selection_left","move_selection_right","move_selection_up","move_to_inbox","move_up","moved_location","movie","movie_creation","movie_edit","movie_edit_off","movie_filter","movie_info","movie_off","movie_speaker","moving","moving_beds","moving_ministry","mp","multicooker","multiline_chart","multimodal_hand_eye","multiple_airports","multiple_stop","museum","music_cast","music_history","music_note","music_note_2","music_note_add","music_off","music_video","my_location","mystery","nat","nature","nature_people","navigate_before","navigate_next","navigation","near_me","near_me_disabled","nearby","nearby_error","nearby_off","nephrology","nest_audio","nest_cam_floodlight","nest_cam_indoor","nest_cam_iq","nest_cam_iq_outdoor","nest_cam_magnet_mount","nest_cam_outdoor","nest_cam_stand","nest_cam_wall_mount","nest_cam_wired_stand","nest_clock_farsight_analog","nest_clock_farsight_digital","nest_connect","nest_detect","nest_display","nest_display_max","nest_doorbell_visitor","nest_eco_leaf","nest_farsight_cool","nest_farsight_dual","nest_farsight_eco","nest_farsight_heat","nest_farsight_seasonal","nest_farsight_weather","nest_found_savings","nest_gale_wifi","nest_heat_link_e","nest_heat_link_gen_3","nest_hello_doorbell","nest_locator_tag","nest_mini","nest_multi_room","nest_protect","nest_remote","nest_remote_comfort_sensor","nest_secure_alarm","nest_sunblock","nest_tag","nest_thermostat","nest_thermostat_e_eu","nest_thermostat_gen_3","nest_thermostat_sensor","nest_thermostat_sensor_eu","nest_thermostat_zirconium_eu","nest_true_radiant","nest_wake_on_approach","nest_wake_on_press","nest_wifi_gale","nest_wifi_mistral","nest_wifi_point","nest_wifi_point_vento","nest_wifi_pro","nest_wifi_pro_2","nest_wifi_router","network_cell","network_check","network_intel_node","network_intelligence","network_intelligence_history","network_intelligence_update","network_locked","network_manage","network_node","network_ping","network_wifi","network_wifi_1_bar","network_wifi_1_bar_locked","network_wifi_2_bar","network_wifi_2_bar_locked","network_wifi_3_bar","network_wifi_3_bar_locked","network_wifi_locked","neurology","new_label","new_releases","new_window","news","newsmode","newspaper","newsstand","next_plan","next_week","nfc","nfc_off","night_shelter","night_sight_auto","night_sight_auto_off","night_sight_max","nightlife","nightlight","nightlight_round","nights_stay","no_accounts","no_adult_content","no_backpack","no_crash","no_drinks","no_encryption","no_encryption_gmailerrorred","no_flash","no_food","no_luggage","no_meals","no_meeting_room","no_photography","no_sim","no_sound","no_stroller","no_transfer","noise_aware","noise_control_off","noise_control_on","nordic_walking","north","north_east","north_west","not_accessible","not_accessible_forward","not_interested","not_listed_location","not_started","note","note_add","note_alt","note_stack","note_stack_add","notes","notification_add","notification_audio","notification_audio_off","notification_important","notification_multiple","notification_settings","notification_sound","notifications","notifications_active","notifications_none","notifications_off","notifications_paused","notifications_unread","numbers","nutrition","ods","odt","offline_bolt","offline_pin","offline_pin_off","offline_share","oil_barrel","okonomiyaki","on_device_training","on_hub_device","oncology","ondemand_video","online_prediction","onsen","opacity","open_in_browser","open_in_full","open_in_new","open_in_new_down","open_in_new_off","open_in_phone","open_jam","open_run","open_with","ophthalmology","oral_disease","orbit","order_approve","order_play","orders","orthopedics","other_admission","other_houses","outbound","outbox","outbox_alt","outdoor_garden","outdoor_grill","outgoing_mail","outlet","outlined_flag","outpatient","outpatient_med","output","output_circle","oven","oven_gen","overview","overview_key","owl","oxygen_saturation","p2p","pace","pacemaker","package","package_2","padding","padel","page_control","page_footer","page_header","page_info","page_menu_ios","pageless","pages","pageview","paid","palette","pallet","pan_tool","pan_tool_alt","pan_zoom","panorama","panorama_fish_eye","panorama_horizontal","panorama_photosphere","panorama_vertical","panorama_wide_angle","paragliding","parent_child_dining","park","parking_meter","parking_sign","parking_valet","partly_cloudy_day","partly_cloudy_night","partner_exchange","partner_heart","partner_reports","party_mode","passkey","passport","password","password_2","password_2_off","patient_list","pattern","pause","pause_circle","pause_circle_filled","pause_circle_outline","pause_presentation","payment","payment_arrow_down","payment_card","payments","pedal_bike","pediatrics","pen_size_1","pen_size_2","pen_size_3","pen_size_4","pen_size_5","pending","pending_actions","pentagon","people","people_alt","people_outline","percent","percent_discount","performance_max","pergola","perm_camera_mic","perm_contact_calendar","perm_data_setting","perm_device_information","perm_identity","perm_media","perm_phone_msg","perm_scan_wifi","person","person_2","person_3","person_4","person_add","person_add_alt","person_add_disabled","person_alert","person_apron","person_book","person_cancel","person_celebrate","person_check","person_edit","person_filled","person_heart","person_off","person_outline","person_pin","person_pin_circle","person_play","person_raised_hand","person_remove","person_search","person_shield","person_text","personal_bag","personal_bag_off","personal_bag_question","personal_injury","personal_places","personal_video","pest_control","pest_control_rodent","pet_supplies","pets","phishing","phone","phone_alt","phone_android","phone_bluetooth_speaker","phone_callback","phone_cancel","phone_disabled","phone_enabled","phone_forwarded","phone_in_talk","phone_iphone","phone_locked","phone_missed","phone_paused","phonelink","phonelink_erase","phonelink_lock","phonelink_off","phonelink_ring","phonelink_ring_off","phonelink_setup","photo","photo_album","photo_auto_merge","photo_camera","photo_camera_back","photo_camera_front","photo_filter","photo_frame","photo_library","photo_prints","photo_size_select_actual","photo_size_select_large","photo_size_select_small","php","physical_therapy","piano","piano_off","pickleball","picture_as_pdf","picture_in_picture","picture_in_picture_alt","picture_in_picture_center","picture_in_picture_large","picture_in_picture_medium","picture_in_picture_mobile","picture_in_picture_off","picture_in_picture_small","pie_chart","pie_chart_filled","pie_chart_outline","pie_chart_outlined","pill","pill_off","pin","pin_drop","pin_end","pin_history","pin_invoke","pin_road","pin_road_2","pinboard","pinboard_unread","pinch","pinch_zoom_in","pinch_zoom_out","pip","pip_exit","pivot_table_chart","place","place_item","plagiarism","plane_contrails","planet","planner_banner_ad_pt","planner_review","play_arrow","play_circle","play_disabled","play_for_work","play_lesson","play_music","play_pause","play_shapes","playground","playground_2","playing_cards","playlist_add","playlist_add_check","playlist_add_check_circle","playlist_add_circle","playlist_play","playlist_remove","plug_connect","plumbing","plus_one","podcasts","podiatry","podium","point_of_sale","point_scan","poker_chip","policy","policy_alert","poll","polyline","polymer","pool","portable_wifi_off","portrait","position_bottom_left","position_bottom_right","position_top_right","post","post_add","potted_plant","power","power_input","power_off","power_rounded","power_settings_circle","power_settings_new","prayer_times","precision_manufacturing","pregnancy","pregnant_woman","preliminary","prescriptions","present_to_all","preview","preview_off","price_change","price_check","print","print_add","print_connect","print_disabled","print_error","print_lock","priority","priority_high","privacy","privacy_tip","private_connectivity","problem","procedure","process_chart","production_quantity_limits","productivity","progress_activity","prompt_suggestion","propane","propane_tank","psychiatry","psychology","psychology_alt","public","public_off","publish","published_with_changes","pulmonology","pulse_alert","punch_clock","push_pin","qr_code","qr_code_2","qr_code_2_add","qr_code_scanner","query_builder","query_stats","question_answer","question_exchange","question_mark","queue","queue_music","queue_play_next","quick_phrases","quick_reference","quick_reference_all","quick_reorder","quickreply","quiet_time","quiet_time_active","quiz","r_mobiledata","radar","radio","radio_button_checked","radio_button_partial","radio_button_unchecked","radiology","railway_alert","railway_alert_2","rainy","rainy_heavy","rainy_light","rainy_snow","ramen_dining","ramp_left","ramp_right","range_hood","rate_review","rate_review_rtl","raven","raw_off","raw_on","read_more","readiness_score","real_estate_agent","rear_camera","rebase","rebase_edit","receipt","receipt_long","receipt_long_off","recent_actors","recent_patient","recenter","recommend","record_voice_over","rectangle","rectangle_add","recycling","redeem","redo","reduce_capacity","refresh","regular_expression","relax","release_alert","remember_me","reminder","reminders_alt","remote_gen","remove","remove_circle","remove_circle_outline","remove_done","remove_from_queue","remove_moderator","remove_red_eye","remove_road","remove_selection","remove_shopping_cart","reopen_window","reorder","repartition","repeat","repeat_on","repeat_one","repeat_one_on","replace_audio","replace_image","replace_video","replay","replay_10","replay_30","replay_5","replay_circle_filled","reply","reply_all","report","report_gmailerrorred","report_off","report_problem","request_page","request_quote","reset_brightness","reset_colors","reset_exposure","reset_focus","reset_image","reset_iso","reset_settings","reset_shadow","reset_shutter_speed","reset_tv","reset_white_balance","reset_wrench","resize","resize_window","respiratory_rate","responsive_layout","rest_area","restart_alt","restaurant","restaurant_menu","restore","restore_from_trash","restore_page","resume","reviews","rewarded_ads","rheumatology","rib_cage","rice_bowl","right_click","right_panel_close","right_panel_open","ring_volume","ring_volume_filled","ripples","road","robot","robot_2","rocket","rocket_launch","roller_shades","roller_shades_closed","roller_skating","roofing","room","room_preferences","room_service","rotate_90_degrees_ccw","rotate_90_degrees_cw","rotate_auto","rotate_left","rotate_right","roundabout_left","roundabout_right","rounded_corner","route","router","router_off","routine","rowing","rss_feed","rsvp","rtt","rubric","rule","rule_folder","rule_settings","run_circle","running_with_errors","rv_hookup","safety_check","safety_check_off","safety_divider","sailing","salinity","sanitizer","satellite","satellite_alt","sauna","save","save_alt","save_as","save_clock","saved_search","savings","scale","scan","scan_delete","scanner","scatter_plot","scene","schedule","schedule_send","schema","school","science","science_off","scooter","score","scoreboard","screen_lock_landscape","screen_lock_portrait","screen_lock_rotation","screen_record","screen_rotation","screen_rotation_alt","screen_rotation_up","screen_search_desktop","screen_share","screenshot","screenshot_frame","screenshot_frame_2","screenshot_keyboard","screenshot_monitor","screenshot_region","screenshot_tablet","script","scrollable_header","scuba_diving","sd","sd_card","sd_card_alert","sd_storage","sdk","search","search_activity","search_check","search_check_2","search_gear","search_hands_free","search_insights","search_off","seat_cool_left","seat_cool_right","seat_heat_left","seat_heat_right","seat_read","seat_vent_left","seat_vent_right","seat_window","security","security_key","security_update","security_update_good","security_update_warning","segment","select","select_all","select_check_box","select_to_speak","select_window","select_window_2","select_window_off","self_care","self_improvement","sell","sell_cloud","send","send_and_archive","send_money","send_time_extension","send_to_mobile","sensor_door","sensor_occupied","sensor_window","sensors","sensors_krx","sensors_krx_off","sensors_off","sentiment_calm","sentiment_content","sentiment_dissatisfied","sentiment_excited","sentiment_extremely_dissatisfied","sentiment_frustrated","sentiment_neutral","sentiment_sad","sentiment_satisfied","sentiment_satisfied_alt","sentiment_stressed","sentiment_very_dissatisfied","sentiment_very_satisfied","sentiment_worried","serif","server_person","service_toolbox","set_meal","settings","settings_accessibility","settings_account_box","settings_alert","settings_applications","settings_b_roll","settings_backup_restore","settings_bluetooth","settings_brightness","settings_cell","settings_cinematic_blur","settings_ethernet","settings_heart","settings_input_antenna","settings_input_component","settings_input_composite","settings_input_hdmi","settings_input_svideo","settings_motion_mode","settings_night_sight","settings_overscan","settings_panorama","settings_phone","settings_photo_camera","settings_power","settings_remote","settings_screen","settings_seating","settings_slow_motion","settings_suggest","settings_system_daydream","settings_timelapse","settings_video_camera","settings_voice","settop_component","severe_cold","shades","shades_closed","shadow","shadow_add","shadow_minus","shape_line","shape_recognition","shapes","share","share_eta","share_location","share_off","share_reviews","share_windows","shaved_ice","sheets_rtl","shelf_auto_hide","shelf_position","shelves","shield","shield_card","shield_lock","shield_locked","shield_moon","shield_person","shield_question","shield_radar","shield_toggle","shield_watch","shield_with_heart","shield_with_house","shift","shift_lock","shift_lock_off","shoe_cleats","shop","shop_2","shop_two","shopping_bag","shopping_bag_speed","shopping_basket","shopping_cart","shopping_cart_checkout","shopping_cart_off","shoppingmode","short_stay","short_text","shortcut","show_chart","shower","shuffle","shuffle_on","shutter_speed","shutter_speed_add","shutter_speed_minus","sick","side_navigation","sign_language","sign_language_2","sign_language_off","signal_cellular_0_bar","signal_cellular_1_bar","signal_cellular_2_bar","signal_cellular_3_bar","signal_cellular_4_bar","signal_cellular_add","signal_cellular_alt","signal_cellular_alt_1_bar","signal_cellular_alt_2_bar","signal_cellular_alt_off","signal_cellular_connected_no_internet_0_bar","signal_cellular_connected_no_internet_4_bar","signal_cellular_no_sim","signal_cellular_nodata","signal_cellular_null","signal_cellular_off","signal_cellular_pause","signal_disconnected","signal_wifi_0_bar","signal_wifi_4_bar","signal_wifi_4_bar_lock","signal_wifi_bad","signal_wifi_connected_no_internet_4","signal_wifi_off","signal_wifi_statusbar_4_bar","signal_wifi_statusbar_not_connected","signal_wifi_statusbar_null","signature","signpost","sim_card","sim_card_alert","sim_card_download","sim_card_lock","simulation","single_arrow","single_bed","sip","siren","siren_check","siren_open","siren_question","skateboarding","skeleton","skillet","skillet_cooktop","skip_next","skip_previous","skull","skull_list","slab_serif","sledding","sleep","sleep_score","slide_library","sliders","slideshow","slow_motion_video","smart_button","smart_card_reader","smart_card_reader_off","smart_display","smart_outlet","smart_screen","smart_toy","smartphone","smartphone_camera","smb_share","smoke_free","smoking_rooms","sms","sms_failed","snail","snippet_folder","snooze","snowboarding","snowflake","snowing","snowing_heavy","snowmobile","snowshoeing","soap","soba","social_distance","social_leaderboard","solar_power","solo_dining","sort","sort_by_alpha","sos","sound_detection_dog_barking","sound_detection_glass_break","sound_detection_loud_sound","sound_sampler","soundbar","soup_kitchen","source","source_environment","source_notes","south","south_america","south_east","south_west","spa","space_bar","space_dashboard","space_dashboard_2","spatial_audio","spatial_audio_off","spatial_speaker","spatial_tracking","speaker","speaker_2","speaker_group","speaker_notes","speaker_notes_off","speaker_phone","special_character","specific_gravity","speech_to_text","speech_to_text_2","speed","speed_0_25","speed_0_2x","speed_0_5","speed_0_5x","speed_0_75","speed_0_7x","speed_1_2","speed_1_25","speed_1_2x","speed_1_5","speed_1_5x","speed_1_75","speed_1_7x","speed_2","speed_2x","speed_3","speed_4","speed_camera","spellcheck","split_scene","split_scene_2","split_scene_down","split_scene_left","split_scene_right","split_scene_up","splitscreen","splitscreen_add","splitscreen_bottom","splitscreen_landscape","splitscreen_landscape_add","splitscreen_left","splitscreen_portrait","splitscreen_right","splitscreen_top","splitscreen_vertical_add","spo2","spoke","sports","sports_and_outdoors","sports_bar","sports_baseball","sports_basketball","sports_cricket","sports_esports","sports_football","sports_golf","sports_gymnastics","sports_handball","sports_hockey","sports_kabaddi","sports_martial_arts","sports_mma","sports_motorsports","sports_rugby","sports_score","sports_soccer","sports_tennis","sports_volleyball","sprinkler","sprint","sql","square","square_circle","square_dot","square_foot","ssid_chart","stack","stack_group","stack_hexagon","stack_off","stack_star","stacked_bar_chart","stacked_email","stacked_inbox","stacked_line_chart","stacks","stadia_controller","stadium","stairs","stairs_2","star","star_border","star_border_purple500","star_half","star_outline","star_purple500","star_rate","star_rate_half","star_shine","stars","stars_2","start","stat_0","stat_1","stat_2","stat_3","stat_minus_1","stat_minus_2","stat_minus_3","stay_current_landscape","stay_current_portrait","stay_primary_landscape","stay_primary_portrait","steering_wheel_cool","steering_wheel_heat","step","step_into","step_out","step_over","steppers","steps","stethoscope","stethoscope_arrow","stethoscope_check","sticker","sticker_add","sticky_note","sticky_note_2","stock_media","stockpot","stop","stop_circle","stop_screen_share","storage","store","store_mall_directory","storefront","storm","straight","straighten","strategy","stream","stream_apps","streetview","stress_management","strikethrough_s","stroke_full","stroke_partial","stroller","style","styler","stylus","stylus_brush","stylus_fountain_pen","stylus_highlighter","stylus_laser_pointer","stylus_note","stylus_pen","stylus_pencil","subdirectory_arrow_left","subdirectory_arrow_right","subheader","subject","subscript","subscriptions","subtitles","subtitles_gear","subtitles_off","subway","subway_walk","subwoofer","summarize","sunny","sunny_snowing","superscript","supervised_user_circle","supervised_user_circle_off","supervisor_account","support","support_agent","surfing","surgical","surround_sound","swap_calls","swap_driving_apps","swap_driving_apps_wheel","swap_horiz","swap_horizontal_circle","swap_vert","swap_vertical_circle","sweep","swipe","swipe_down","swipe_down_alt","swipe_left","swipe_left_2","swipe_left_alt","swipe_right","swipe_right_2","swipe_right_alt","swipe_up","swipe_up_alt","swipe_vertical","switch","switch_access","switch_access_2","switch_access_3","switch_access_shortcut","switch_access_shortcut_add","switch_account","switch_camera","switch_left","switch_off","switch_right","switch_video","switches","sword_rose","swords","symptoms","synagogue","sync","sync_alt","sync_arrow_down","sync_arrow_up","sync_desktop","sync_disabled","sync_lock","sync_problem","sync_saved_locally","sync_saved_locally_off","syringe","system_security_update","system_security_update_good","system_security_update_warning","system_update","system_update_alt","tab","tab_close","tab_close_inactive","tab_close_right","tab_duplicate","tab_group","tab_inactive","tab_move","tab_new_right","tab_recent","tab_search","tab_unselected","table","table_bar","table_chart","table_chart_view","table_convert","table_edit","table_eye","table_lamp","table_large","table_restaurant","table_rows","table_rows_narrow","table_sign","table_view","tablet","tablet_android","tablet_camera","tablet_mac","tabs","tactic","tag","tag_faces","takeout_dining","takeout_dining_2","tamper_detection_off","tamper_detection_on","tap_and_play","tapas","target","task","task_alt","tatami_seat","taunt","taxi_alert","team_dashboard","temp_preferences_custom","temp_preferences_eco","temple_buddhist","temple_hindu","tenancy","terminal","terminal_2","terminal_add","terrain","text_ad","text_ad_off","text_compare","text_decrease","text_fields","text_fields_alt","text_format","text_increase","text_rotate_up","text_rotate_vertical","text_rotation_angledown","text_rotation_angleup","text_rotation_down","text_rotation_none","text_select_end","text_select_jump_to_beginning","text_select_jump_to_end","text_select_move_back_character","text_select_move_back_word","text_select_move_down","text_select_move_forward_character","text_select_move_forward_word","text_select_move_up","text_select_start","text_snippet","text_to_speech","text_up","textsms","texture","texture_add","texture_minus","theater_comedy","theaters","thermometer","thermometer_add","thermometer_alert","thermometer_gain","thermometer_loss","thermometer_minus","thermostat","thermostat_arrow_down","thermostat_arrow_up","thermostat_auto","thermostat_carbon","things_to_do","thread_unread","threat_intelligence","thumb_down","thumb_down_alt","thumb_down_filled","thumb_down_off","thumb_down_off_alt","thumb_up","thumb_up_alt","thumb_up_filled","thumb_up_off","thumb_up_off_alt","thumbnail_bar","thumbs_up_double","thumbs_up_down","thunderstorm","tibia","tibia_alt","tile_large","tile_medium","tile_small","tilt_arrow_down","tilt_arrow_up","time_auto","time_to_leave","timelapse","timeline","timer","timer_1","timer_10","timer_10_alt_1","timer_10_select","timer_2","timer_3","timer_3_alt_1","timer_3_select","timer_5","timer_5_shutter","timer_arrow_down","timer_arrow_up","timer_off","timer_pause","timer_play","tips_and_updates","tire_repair","title","titlecase","toast","toc","today","toggle_off","toggle_on","token","toll","tonality","tonality_2","toolbar","tools_flat_head","tools_installation_kit","tools_ladder","tools_level","tools_phillips","tools_pliers_wire_stripper","tools_power_drill","tools_wrench","tooltip","tooltip_2","top_panel_close","top_panel_open","topic","tornado","total_dissolved_solids","touch_app","touch_double","touch_double_2","touch_long","touch_triple","touchpad_mouse","touchpad_mouse_off","tour","toys","toys_and_games","toys_fan","track_changes","trackpad_input","trackpad_input_2","trackpad_input_3","traffic","traffic_jam","trail_length","trail_length_medium","trail_length_short","train","tram","transcribe","transfer_within_a_station","transform","transgender","transit_enterexit","transit_ticket","transition_chop","transition_dissolve","transition_fade","transition_push","transition_slide","translate","translate_indic","transportation","travel","travel_explore","travel_luggage_and_bags","trending_down","trending_flat","trending_up","triangle_circle","trip","trip_origin","trolley","trolley_cable_car","trophy","troubleshoot","try","tsunami","tsv","tty","tune","tungsten","turn_left","turn_right","turn_sharp_left","turn_sharp_right","turn_slight_left","turn_slight_right","turned_in","turned_in_not","tv","tv_displays","tv_gen","tv_guide","tv_next","tv_off","tv_options_edit_channels","tv_options_input_settings","tv_remote","tv_signin","tv_with_assistant","two_pager","two_pager_store","two_wheeler","type_specimen","u_turn_left","u_turn_right","udon","ulna_radius","ulna_radius_alt","umbrella","unarchive","undereye","undo","unfold_less","unfold_less_double","unfold_more","unfold_more_double","ungroup","universal_currency","universal_currency_alt","universal_local","unknown_2","unknown_5","unknown_7","unknown_document","unknown_med","unlicense","unpaved_road","unpin","unpublished","unsubscribe","upcoming","update","update_disabled","upgrade","upi_pay","upload","upload_2","upload_file","uppercase","urology","usb","usb_off","user_attributes","vaccines","vacuum","vacuum_2","vacuum_2_on","valve","vape_free","vaping_rooms","variable_add","variable_insert","variable_remove","variables","ventilator","verified","verified_off","verified_user","vertical_align_bottom","vertical_align_center","vertical_align_top","vertical_distribute","vertical_shades","vertical_shades_closed","vertical_split","vibration","video_call","video_camera_back","video_camera_back_add","video_camera_front","video_camera_front_off","video_chat","video_file","video_frame_copy","video_frame_save","video_label","video_library","video_search","video_settings","video_stable","video_template","videocam","videocam_alert","videocam_off","videogame_asset","videogame_asset_off","view_agenda","view_apps","view_array","view_carousel","view_column","view_column_2","view_comfy","view_comfy_alt","view_compact","view_compact_alt","view_cozy","view_day","view_headline","view_in_ar","view_in_ar_new","view_in_ar_off","view_kanban","view_list","view_module","view_object_track","view_quilt","view_real_size","view_sidebar","view_stream","view_timeline","view_week","vignette","vignette_2","villa","visibility","visibility_lock","visibility_off","vital_signs","vitals","vo2_max","voice_chat","voice_chat_off","voice_over_off","voice_selection","voice_selection_off","voicemail","voicemail_2","volcano","volume_down","volume_down_alt","volume_mute","volume_off","volume_up","volunteer_activism","voting_chip","vpn_key","vpn_key_alert","vpn_key_off","vpn_lock","vpn_lock_2","vr180_create2d","vr180_create2d_off","vrpano","walk_bike","wall_art","wall_lamp","wallet","wallpaper","wallpaper_slideshow","wand_shine","wand_stars","ward","warehouse","warning","warning_amber","warning_off","wash","washoku","watch","watch_alert","watch_arrow","watch_arrow_down","watch_button","watch_button_press","watch_check","watch_later","watch_lock","watch_off","watch_screentime","watch_vibration","watch_wake","water","water_bottle","water_bottle_large","water_damage","water_do","water_drop","water_drops","water_ec","water_full","water_heater","water_lock","water_loss","water_lux","water_medium","water_orp","water_ph","water_pump","water_voc","waterfall_chart","waves","waving_hand","wb_auto","wb_cloudy","wb_incandescent","wb_iridescent","wb_shade","wb_sunny","wb_twilight","wb_twilight_2","wc","weather_hail","weather_mix","weather_snowy","web","web_asset","web_asset_off","web_stories","web_traffic","webhook","weekend","weight","west","whatshot","wheat","wheelchair_pickup","where_to_vote","widget_medium","widget_menu","widget_small","widget_width","widgets","width","width_full","width_normal","width_wide","wifi","wifi_1_bar","wifi_2_bar","wifi_add","wifi_calling","wifi_calling_1","wifi_calling_2","wifi_calling_3","wifi_calling_bar_1","wifi_calling_bar_2","wifi_calling_bar_3","wifi_channel","wifi_device","wifi_find","wifi_home","wifi_lock","wifi_notification","wifi_off","wifi_password","wifi_protected_setup","wifi_proxy","wifi_tethering","wifi_tethering_error","wifi_tethering_off","wind_power","window","window_closed","window_open","window_sensor","windshield_defrost_auto","windshield_defrost_front","windshield_defrost_rear","windshield_heat_front","wine_bar","woman","woman_2","work","work_alert","work_history","work_off","work_outline","work_update","workflow","workspace_premium","workspaces","workspaces_outline","wounds_injuries","wrap_text","wrist","wrong_location","wysiwyg","x_circle","y_circle","yakitori","yard","yoshoku","your_trips","youtube_activity","youtube_searched_for","zone_person_alert","zone_person_idle","zone_person_urgent","zoom_in","zoom_in_map","zoom_out","zoom_out_map"],Vt=E;function la(){let d="";for(const e of Rt)d+=`.fx-icon-${e}::before{content:"${e}"}`;return d}function Ot(){return Mt()+Vt+la()}let Me=!1;function Bt(d=typeof document!="undefined"?document:void 0){if(Me||!d)return;const e=d.createElement("style");e.id=Dt,e.textContent=Ot(),d.head.appendChild(e),Me=!0}function ca(){Me=!1,jt()}Bt();const I=Object.freeze(Object.defineProperty({__proto__:null,FENIX_ICON_BASE_CSS:E,FENIX_ICON_DOC_BASE_CSS:Vt,FENIX_ICON_FONT_FAMILY:j,FENIX_ICON_NAMES:Rt,__resetFenixIconsFontInjection:jt,__resetFenixIconsInjection:ca,buildFenixIconsCss:Ot,buildFenixIconsFontCss:It,isFenixIconName:C,loadFenixIcons:Bt,loadFenixIconsFont:Nt},Symbol.toStringTag,{value:"Module"}))});
|