@adia-ai/web-components 0.8.19 → 0.8.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/components/nav-group/nav-group.a2ui.json +5 -0
  3. package/components/nav-group/nav-group.class.js +14 -6
  4. package/components/nav-group/nav-group.css +5 -2
  5. package/components/nav-group/nav-group.d.ts +2 -0
  6. package/components/nav-group/nav-group.yaml +4 -0
  7. package/dist/theme-provider.min.js +1 -1
  8. package/dist/web-components.min.css +1 -1
  9. package/dist/web-components.min.js +2 -2
  10. package/dist/web-components.sheet.js +1 -1
  11. package/package.json +2 -1
  12. package/components/adia-mark/adia-mark.test.js +0 -69
  13. package/components/adia-wordmark/adia-wordmark.test.js +0 -69
  14. package/components/agent-artifact/agent-artifact.test.js +0 -61
  15. package/components/alert/alert.test.js +0 -364
  16. package/components/color-picker/color-picker.test.js +0 -96
  17. package/components/combobox/combobox.test.js +0 -256
  18. package/components/command/command.test.js +0 -99
  19. package/components/date-range-picker/date-range-picker.test.js +0 -387
  20. package/components/datetime-picker/datetime-picker.test.js +0 -454
  21. package/components/demo-toggle/demo-toggle.test.js +0 -102
  22. package/components/description-list/description-list.test.js +0 -72
  23. package/components/display-field/display-field.test.js +0 -115
  24. package/components/empty-state/empty-state.test.js +0 -77
  25. package/components/field/field.test.js +0 -260
  26. package/components/fields/fields.test.js +0 -88
  27. package/components/inline-message/inline-message.test.js +0 -203
  28. package/components/input/input.test.js +0 -335
  29. package/components/integration-card/integration-card.test.js +0 -318
  30. package/components/link/link.test.js +0 -143
  31. package/components/list/list.test.js +0 -106
  32. package/components/list-window/list-window.test.js +0 -303
  33. package/components/loading-overlay/loading-overlay.test.js +0 -257
  34. package/components/menu/menu.test.js +0 -176
  35. package/components/nav/nav.test.js +0 -428
  36. package/components/nav-group/nav-group.test.js +0 -67
  37. package/components/option-card/option-card.test.js +0 -32
  38. package/components/pagination/pagination.test.js +0 -195
  39. package/components/select/select.test.js +0 -481
  40. package/components/slider/slider.test.js +0 -202
  41. package/components/spinner/spinner.test.js +0 -272
  42. package/components/stat/stat.test.js +0 -108
  43. package/components/step-progress/step-progress.test.js +0 -129
  44. package/components/swatch/swatch.test.js +0 -563
  45. package/components/table/table.test.js +0 -479
  46. package/components/table-toolbar/table-toolbar.test.js +0 -152
  47. package/components/tag/tag.test.js +0 -137
  48. package/components/tags-input/tags-input.test.js +0 -477
  49. package/components/text/text.test.js +0 -202
  50. package/components/theme-provider/theme-provider.test.js +0 -94
  51. package/components/time-picker/time-picker.test.js +0 -287
  52. package/components/timeline/timeline.test.js +0 -31
  53. package/components/toggle-scheme/toggle-scheme.test.js +0 -110
  54. package/components/tree/tree.test.js +0 -312
  55. package/core/element.test.js +0 -389
  56. package/core/icons.test.js +0 -187
  57. package/core/logical-children.test.js +0 -54
  58. package/core/markdown.test.js +0 -47
  59. package/core/responsive.test.js +0 -121
  60. package/core/template.test.js +0 -611
  61. package/traits/active-state/active-state.test.js +0 -28
  62. package/traits/anchor-positioning/anchor-positioning.test.js +0 -122
  63. package/traits/announcer/announcer.test.js +0 -268
  64. package/traits/arrow-grid-nav/arrow-grid-nav.test.js +0 -375
  65. package/traits/attention-pulse/attention-pulse.test.js +0 -26
  66. package/traits/confetti/confetti.test.js +0 -46
  67. package/traits/confetti-burst/confetti-burst.test.js +0 -46
  68. package/traits/count-up/count-up.test.js +0 -54
  69. package/traits/declarative.test.js +0 -138
  70. package/traits/dirty-state/dirty-state.test.js +0 -45
  71. package/traits/drag-ghost/drag-ghost.test.js +0 -19
  72. package/traits/draggable/draggable.test.js +0 -60
  73. package/traits/draggable-list-item/draggable-list-item.test.js +0 -51
  74. package/traits/drop-target/drop-target.test.js +0 -241
  75. package/traits/droppable/droppable.test.js +0 -54
  76. package/traits/droppable-collection/droppable-collection.test.js +0 -99
  77. package/traits/error-shake/error-shake.test.js +0 -114
  78. package/traits/fade-presence/fade-presence.test.js +0 -20
  79. package/traits/focus-restore/focus-restore.test.js +0 -202
  80. package/traits/focus-trap/focus-trap.test.js +0 -42
  81. package/traits/focusable/focusable.test.js +0 -53
  82. package/traits/glow-focus/glow-focus.test.js +0 -31
  83. package/traits/gradient-shift/gradient-shift.test.js +0 -22
  84. package/traits/haptic-feedback/haptic-feedback.test.js +0 -52
  85. package/traits/hotkey/hotkey.test.js +0 -61
  86. package/traits/hoverable/hoverable.test.js +0 -24
  87. package/traits/inertia-drag/inertia-drag.test.js +0 -33
  88. package/traits/input-mask/input-mask.test.js +0 -151
  89. package/traits/intersection-observer/intersection-observer.test.js +0 -38
  90. package/traits/keyboard-nav/keyboard-nav.test.js +0 -41
  91. package/traits/keyboard-reorderable/keyboard-reorderable.test.js +0 -45
  92. package/traits/layout-animation/layout-animation.test.js +0 -114
  93. package/traits/long-press/long-press.test.js +0 -244
  94. package/traits/magnetic-hover/magnetic-hover.test.js +0 -30
  95. package/traits/noise-texture/noise-texture.test.js +0 -20
  96. package/traits/parallax/parallax.test.js +0 -26
  97. package/traits/portal/portal.test.js +0 -30
  98. package/traits/pressable/pressable.test.js +0 -73
  99. package/traits/resettable/resettable.test.js +0 -100
  100. package/traits/resizable/resizable.test.js +0 -39
  101. package/traits/resize-observer/resize-observer.test.js +0 -38
  102. package/traits/ripple/ripple.test.js +0 -32
  103. package/traits/roving-tabindex/roving-tabindex.test.js +0 -28
  104. package/traits/scale-press/scale-press.test.js +0 -39
  105. package/traits/scroll-lock/scroll-lock.test.js +0 -45
  106. package/traits/scroll-progress/scroll-progress.test.js +0 -182
  107. package/traits/shimmer-loading/shimmer-loading.test.js +0 -43
  108. package/traits/smoke.test.js +0 -111
  109. package/traits/snap-to-grid/snap-to-grid.test.js +0 -40
  110. package/traits/sound-feedback/sound-feedback.test.js +0 -26
  111. package/traits/spring-animate/spring-animate.test.js +0 -28
  112. package/traits/success-checkmark/success-checkmark.test.js +0 -120
  113. package/traits/tilt-hover/tilt-hover.test.js +0 -32
  114. package/traits/tossable/tossable.test.js +0 -31
  115. package/traits/traits-host.test.js +0 -73
  116. package/traits/typeahead/typeahead.test.js +0 -38
  117. package/traits/typewriter/typewriter.test.js +0 -47
  118. package/traits/validation/validation.test.js +0 -93
  119. package/traits/view-transition/view-transition.test.js +0 -268
@@ -243,12 +243,12 @@ Correct shape for <chart-ui x="label" y="value">:
243
243
  <button-ui data-tour-next variant="primary" size="sm" text="${i?"Done":"Next \u2192"}"></button-ui>
244
244
  </div>
245
245
  </div>
246
- `;try{this.#e.showPopover()}catch{}this.#i?.(),l?this.#i=lt(l,this.#e,{placement:o,gap:12}):(this.#e.style.position="fixed",this.#e.style.top="50%",this.#e.style.left="50%",this.#e.style.transform="translate(-50%, -50%)"),queueMicrotask(()=>this.#e?.focus?.())}#d=null;#f(){if(!this.#t)return;let t=this.#d;if(!t){this.#t.setAttribute("data-tour-no-target","");return}this.#t.removeAttribute("data-tour-no-target");let e=t.getBoundingClientRect(),i=getComputedStyle(this),n=parseFloat(i.getPropertyValue("--tour-spotlight-padding"))||8,r=Math.max(0,e.top-n),o=Math.max(0,e.left-n),a=e.width+n*2,l=e.height+n*2;this.#t.style.top=`${r}px`,this.#t.style.left=`${o}px`,this.#t.style.width=`${a}px`,this.#t.style.height=`${l}px`}#p=t=>{let e=t.target;if(!(!e||!e.closest)){if(e.closest("[data-tour-skip]")){this.skip();return}if(e.closest("[data-tour-previous]")){this.previous();return}if(e.closest("[data-tour-next]")){this.next();return}}}},ko=class extends w{static properties={target:{type:String,default:"",reflect:!0},title:{type:String,default:"",reflect:!0},placement:{type:String,default:"bottom",reflect:!0}};static template=()=>null};function LR(s){return String(s??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}x("tour-ui",wo),x("tour-step-ui",ko);P();var Ok="data-toolbar-spillover",MR="data-toolbar-spillover-menu",bk=8,Qu="data-toolbar-spillover-label";function yk(s){return s?.tagName&&s.tagName.toLowerCase()==="divider-ui"}function RR(s){return s?s.split("-").filter(Boolean).map(t=>t[0].toUpperCase()+t.slice(1)).join(" "):""}function IR(s){let t=s.matches?.("button-ui")?[s]:Array.from(s.querySelectorAll?.("button-ui")||[]);for(let e of t){if(e.hasAttribute(Qu)||e.getAttribute("text"))continue;let i=e.getAttribute("aria-label")||RR(e.getAttribute("icon"));i&&(e.setAttribute(Qu,""),e.setAttribute("text",i))}}function DR(s){let t=s.matches?.("button-ui")?[s]:Array.from(s.querySelectorAll?.("button-ui")||[]);for(let e of t)e.hasAttribute(Qu)&&(e.removeAttribute(Qu),e.removeAttribute("text"))}function vk(s){let t=s.getBoundingClientRect(),e=getComputedStyle(s),i=parseFloat(e.marginLeft)||0,n=parseFloat(e.marginRight)||0;return t.width+i+n}var Ao=class extends w{static properties={gap:{type:String,default:"sm",reflect:!0},align:{type:String,default:"start",reflect:!0},overflow:{type:String,default:"menu",reflect:!0},bordered:{type:Boolean,default:!1,reflect:!0}};static template=()=>null;#t=null;#e=null;#i=null;#s=null;#n=null;#r=!1;#a=!1;#o=null;#l=null;connected(){this.setAttribute("role","toolbar"),this.#c(),typeof ResizeObserver<"u"&&(this.#t=new ResizeObserver(()=>this.#b()),this.#t.observe(this)),typeof MutationObserver<"u"&&(this.#e=new MutationObserver(()=>{this.#r||this.#b()})),this.#y(),this.#b()}disconnected(){this.#o!=null&&(cancelAnimationFrame(this.#o),this.#o=null),this.#a=!1,this.#t?.disconnect(),this.#e?.disconnect(),this.#u(),this.#t=null,this.#e=null,this.#i=null,this.#s=null}#c(){if(this.#i)return;let t=document.createElement("button-ui");t.setAttribute("icon","dots-three"),t.setAttribute("variant","ghost"),t.setAttribute("size","sm"),t.setAttribute(Ok,""),t.setAttribute("aria-label","More actions"),t.setAttribute("aria-haspopup","menu"),t.hidden=!0;let e=document.createElement("div");e.setAttribute(MR,""),e.setAttribute("popover","manual"),e.setAttribute("role","menu"),t.addEventListener("click",this.#d),e.addEventListener("click",this.#f),e.addEventListener("toggle",this.#g),this.appendChild(t),this.appendChild(e),this.#i=t,this.#s=e}#h(){let t=this.#s;!t||t.matches(":popover-open")||(t.showPopover?.(),this.#n?.(),this.#n=lt(this.#i,t,{placement:"bottom-end",gap:4}),this.#l=requestAnimationFrame(()=>{this.#l=null,document.addEventListener("pointerdown",this.#p,!0),document.addEventListener("keydown",this.#m,!0)}))}#u(){this.#n?.(),this.#n=null,this.#s?.matches(":popover-open")&&this.#s.hidePopover?.(),this.#l!=null&&(cancelAnimationFrame(this.#l),this.#l=null),document.removeEventListener("pointerdown",this.#p,!0),document.removeEventListener("keydown",this.#m,!0)}#d=t=>{t.stopPropagation(),this.#s?.matches(":popover-open")?this.#u():this.#h()};#f=t=>{let e=t.target.closest("button-ui");e&&(e.matches(`[${Ok}]`)||queueMicrotask(()=>this.#u()))};#p=t=>{if(this.#i?.contains(t.target)||this.#s?.contains(t.target))return;let e=t.composedPath?.()||[];for(let i of e){if(i===document)break;if(i?.nodeType===1&&i.hasAttribute?.("popover"))return}this.#u()};#m=t=>{t.key==="Escape"&&(t.stopPropagation(),this.#u(),this.#i?.focus?.({preventScroll:!0}))};#g=t=>{t.newState==="closed"&&(this.#n?.(),this.#n=null,this.#l!=null&&(cancelAnimationFrame(this.#l),this.#l=null),document.removeEventListener("pointerdown",this.#p,!0),document.removeEventListener("keydown",this.#m,!0))};#b(){this.#a||(this.#a=!0,this.#o=requestAnimationFrame(()=>{this.#o=null,this.#a=!1,this.isConnected&&this.#S()}))}#y(){this.#e?.observe(this,{childList:!0})}#O(){this.#e&&(this.#e.disconnect(),this.#e.takeRecords())}#S(){if(!this.isConnected)return;let t=this.#i,e=this.#s;if(!(!t||!e)){this.#r=!0,this.#O();try{for(;e.firstChild;)DR(e.firstChild),this.insertBefore(e.firstChild,t);let i=0;for(let y of this.children)y===t||y===e||(y.dataset.toolbarOrder==null&&(y.dataset.toolbarOrder=String(i)),i+=1);let n=Array.from(this.children).filter(y=>y!==t&&y!==e).sort((y,v)=>Number(y.dataset.toolbarOrder)-Number(v.dataset.toolbarOrder));for(let y of n)this.insertBefore(y,t);let r=n;for(let y of r)y.hidden=!1;t.hidden=!0;let o=getComputedStyle(this),a=parseFloat(o.paddingLeft)||0,l=parseFloat(o.paddingRight)||0,h=parseFloat(o.columnGap||o.gap)||0,c=this.clientWidth-a-l,u=r.map(y=>vk(y)),d=u.reduce((y,v)=>y+v,0)+Math.max(0,r.length-1)*h,f=d<=c-bk;if(this.overflow==="none"||f)return;t.hidden=!1;let p=vk(t),m=r.length,O=d;for(;m>0&&!(O+h+p<=c-bk);)m-=1,O-=u[m],m>0&&(O-=h);for(;m>0&&yk(r[m-1]);)m-=1;let g=r.slice(m);for(let y of g){if(yk(y)){y.hidden=!0;continue}IR(y),e.appendChild(y)}e.firstElementChild||(t.hidden=!0)}finally{this.#r=!1,queueMicrotask(()=>{this.#e?.takeRecords(),this.#y()})}}}},$o=class extends w{static template=()=>null;connected(){this.setAttribute("role","group")}};x("toolbar-ui",Ao),x("toolbar-group-ui",$o);P();var Co=class extends w{static properties={variant:{type:String,default:"primary",reflect:!0},collapsed:{type:Boolean,default:!1,reflect:!0},divider:{type:Boolean,default:!1,reflect:!0},heading:{type:String,default:"",reflect:!0}};static template=()=>null;#t=null;connected(){this.setAttribute("role","navigation"),this.heading&&this.setAttribute("aria-label",this.heading),this.addEventListener("click",this.#i),this.variant!=="section"&&typeof ResizeObserver<"u"&&(this.#t=new ResizeObserver(()=>this.#e()),this.#t.observe(this))}render(){this.heading?this.setAttribute("aria-label",this.heading):this.removeAttribute("aria-label"),this.variant!=="section"&&this.#e()}#e(){let t=this.collapsed||this.getBoundingClientRect().width<=96;for(let e of this.querySelectorAll(":scope > nav-group-ui")){let i=e.querySelector(':scope > [slot="header"]');i&&(i.title=t?e.text:"")}for(let e of this.querySelectorAll(":scope > nav-item-ui"))e.title=t?e.text:""}get selectedItem(){return this.querySelector("nav-item-ui[selected]")}select(t){let e=this.selectedItem;e&&e!==t&&e.removeAttribute("selected"),t&&(t.setAttribute("selected",""),this.dispatchEvent(new CustomEvent("nav-select",{bubbles:!0,detail:{item:t,text:t.text,value:t.value}})))}toggle(){this.variant!=="section"&&(this.collapsed=!this.collapsed)}#i=t=>{let e=t.target.closest("nav-item-ui");if(e&&this.contains(e)){if(e.disabled)return;this.select(e),this.#s();return}if(this.variant==="section")return;let i=t.target.closest("nav-group-ui");if(i&&this.contains(i))if(this.collapsed||this.getBoundingClientRect().width<=96){if(t.target.closest("[popover]"))return;i.showPopover?.()}else{let r=i.querySelector(':scope > [slot="header"]');r&&(t.target===r||r.contains(t.target))&&(i.open=!i.open)}};#s(){this.style.pointerEvents="none",requestAnimationFrame(()=>{this.style.pointerEvents=""})}disconnected(){this.removeEventListener("click",this.#i),this.#t?.disconnect(),this.#t=null}};x("nav-ui",Co);P();var Eo=class extends w{static properties={text:{type:String,default:"",reflect:!0},icon:{type:String,default:"",reflect:!0},badge:{type:String,default:"",reflect:!0},open:{type:Boolean,default:!1,reflect:!0},collapsible:{type:Boolean,default:!0,reflect:!0},variant:{type:String,default:"",reflect:!0}};static template=()=>null;#t=null;#e=null;#i=null;#s=t=>{this.collapsible&&(t.key==="Enter"||t.key===" ")&&(t.preventDefault(),this.open=!this.open,this.dispatchEvent(new CustomEvent("group-toggle",{bubbles:!0,detail:{text:this.text,open:this.open}})))};connected(){this.setAttribute("role","group"),it(this,"header").length?this.#i=it(this,"header")[0]:(this.#i=document.createElement("div"),this.#i.setAttribute("slot","header"),this.#i.setAttribute("tabindex","0"),this.#i.innerHTML=`
246
+ `;try{this.#e.showPopover()}catch{}this.#i?.(),l?this.#i=lt(l,this.#e,{placement:o,gap:12}):(this.#e.style.position="fixed",this.#e.style.top="50%",this.#e.style.left="50%",this.#e.style.transform="translate(-50%, -50%)"),queueMicrotask(()=>this.#e?.focus?.())}#d=null;#f(){if(!this.#t)return;let t=this.#d;if(!t){this.#t.setAttribute("data-tour-no-target","");return}this.#t.removeAttribute("data-tour-no-target");let e=t.getBoundingClientRect(),i=getComputedStyle(this),n=parseFloat(i.getPropertyValue("--tour-spotlight-padding"))||8,r=Math.max(0,e.top-n),o=Math.max(0,e.left-n),a=e.width+n*2,l=e.height+n*2;this.#t.style.top=`${r}px`,this.#t.style.left=`${o}px`,this.#t.style.width=`${a}px`,this.#t.style.height=`${l}px`}#p=t=>{let e=t.target;if(!(!e||!e.closest)){if(e.closest("[data-tour-skip]")){this.skip();return}if(e.closest("[data-tour-previous]")){this.previous();return}if(e.closest("[data-tour-next]")){this.next();return}}}},ko=class extends w{static properties={target:{type:String,default:"",reflect:!0},title:{type:String,default:"",reflect:!0},placement:{type:String,default:"bottom",reflect:!0}};static template=()=>null};function LR(s){return String(s??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}x("tour-ui",wo),x("tour-step-ui",ko);P();var Ok="data-toolbar-spillover",MR="data-toolbar-spillover-menu",bk=8,Qu="data-toolbar-spillover-label";function yk(s){return s?.tagName&&s.tagName.toLowerCase()==="divider-ui"}function RR(s){return s?s.split("-").filter(Boolean).map(t=>t[0].toUpperCase()+t.slice(1)).join(" "):""}function IR(s){let t=s.matches?.("button-ui")?[s]:Array.from(s.querySelectorAll?.("button-ui")||[]);for(let e of t){if(e.hasAttribute(Qu)||e.getAttribute("text"))continue;let i=e.getAttribute("aria-label")||RR(e.getAttribute("icon"));i&&(e.setAttribute(Qu,""),e.setAttribute("text",i))}}function DR(s){let t=s.matches?.("button-ui")?[s]:Array.from(s.querySelectorAll?.("button-ui")||[]);for(let e of t)e.hasAttribute(Qu)&&(e.removeAttribute(Qu),e.removeAttribute("text"))}function vk(s){let t=s.getBoundingClientRect(),e=getComputedStyle(s),i=parseFloat(e.marginLeft)||0,n=parseFloat(e.marginRight)||0;return t.width+i+n}var Ao=class extends w{static properties={gap:{type:String,default:"sm",reflect:!0},align:{type:String,default:"start",reflect:!0},overflow:{type:String,default:"menu",reflect:!0},bordered:{type:Boolean,default:!1,reflect:!0}};static template=()=>null;#t=null;#e=null;#i=null;#s=null;#n=null;#r=!1;#a=!1;#o=null;#l=null;connected(){this.setAttribute("role","toolbar"),this.#c(),typeof ResizeObserver<"u"&&(this.#t=new ResizeObserver(()=>this.#b()),this.#t.observe(this)),typeof MutationObserver<"u"&&(this.#e=new MutationObserver(()=>{this.#r||this.#b()})),this.#y(),this.#b()}disconnected(){this.#o!=null&&(cancelAnimationFrame(this.#o),this.#o=null),this.#a=!1,this.#t?.disconnect(),this.#e?.disconnect(),this.#u(),this.#t=null,this.#e=null,this.#i=null,this.#s=null}#c(){if(this.#i)return;let t=document.createElement("button-ui");t.setAttribute("icon","dots-three"),t.setAttribute("variant","ghost"),t.setAttribute("size","sm"),t.setAttribute(Ok,""),t.setAttribute("aria-label","More actions"),t.setAttribute("aria-haspopup","menu"),t.hidden=!0;let e=document.createElement("div");e.setAttribute(MR,""),e.setAttribute("popover","manual"),e.setAttribute("role","menu"),t.addEventListener("click",this.#d),e.addEventListener("click",this.#f),e.addEventListener("toggle",this.#g),this.appendChild(t),this.appendChild(e),this.#i=t,this.#s=e}#h(){let t=this.#s;!t||t.matches(":popover-open")||(t.showPopover?.(),this.#n?.(),this.#n=lt(this.#i,t,{placement:"bottom-end",gap:4}),this.#l=requestAnimationFrame(()=>{this.#l=null,document.addEventListener("pointerdown",this.#p,!0),document.addEventListener("keydown",this.#m,!0)}))}#u(){this.#n?.(),this.#n=null,this.#s?.matches(":popover-open")&&this.#s.hidePopover?.(),this.#l!=null&&(cancelAnimationFrame(this.#l),this.#l=null),document.removeEventListener("pointerdown",this.#p,!0),document.removeEventListener("keydown",this.#m,!0)}#d=t=>{t.stopPropagation(),this.#s?.matches(":popover-open")?this.#u():this.#h()};#f=t=>{let e=t.target.closest("button-ui");e&&(e.matches(`[${Ok}]`)||queueMicrotask(()=>this.#u()))};#p=t=>{if(this.#i?.contains(t.target)||this.#s?.contains(t.target))return;let e=t.composedPath?.()||[];for(let i of e){if(i===document)break;if(i?.nodeType===1&&i.hasAttribute?.("popover"))return}this.#u()};#m=t=>{t.key==="Escape"&&(t.stopPropagation(),this.#u(),this.#i?.focus?.({preventScroll:!0}))};#g=t=>{t.newState==="closed"&&(this.#n?.(),this.#n=null,this.#l!=null&&(cancelAnimationFrame(this.#l),this.#l=null),document.removeEventListener("pointerdown",this.#p,!0),document.removeEventListener("keydown",this.#m,!0))};#b(){this.#a||(this.#a=!0,this.#o=requestAnimationFrame(()=>{this.#o=null,this.#a=!1,this.isConnected&&this.#S()}))}#y(){this.#e?.observe(this,{childList:!0})}#O(){this.#e&&(this.#e.disconnect(),this.#e.takeRecords())}#S(){if(!this.isConnected)return;let t=this.#i,e=this.#s;if(!(!t||!e)){this.#r=!0,this.#O();try{for(;e.firstChild;)DR(e.firstChild),this.insertBefore(e.firstChild,t);let i=0;for(let y of this.children)y===t||y===e||(y.dataset.toolbarOrder==null&&(y.dataset.toolbarOrder=String(i)),i+=1);let n=Array.from(this.children).filter(y=>y!==t&&y!==e).sort((y,v)=>Number(y.dataset.toolbarOrder)-Number(v.dataset.toolbarOrder));for(let y of n)this.insertBefore(y,t);let r=n;for(let y of r)y.hidden=!1;t.hidden=!0;let o=getComputedStyle(this),a=parseFloat(o.paddingLeft)||0,l=parseFloat(o.paddingRight)||0,h=parseFloat(o.columnGap||o.gap)||0,c=this.clientWidth-a-l,u=r.map(y=>vk(y)),d=u.reduce((y,v)=>y+v,0)+Math.max(0,r.length-1)*h,f=d<=c-bk;if(this.overflow==="none"||f)return;t.hidden=!1;let p=vk(t),m=r.length,O=d;for(;m>0&&!(O+h+p<=c-bk);)m-=1,O-=u[m],m>0&&(O-=h);for(;m>0&&yk(r[m-1]);)m-=1;let g=r.slice(m);for(let y of g){if(yk(y)){y.hidden=!0;continue}IR(y),e.appendChild(y)}e.firstElementChild||(t.hidden=!0)}finally{this.#r=!1,queueMicrotask(()=>{this.#e?.takeRecords(),this.#y()})}}}},$o=class extends w{static template=()=>null;connected(){this.setAttribute("role","group")}};x("toolbar-ui",Ao),x("toolbar-group-ui",$o);P();var Co=class extends w{static properties={variant:{type:String,default:"primary",reflect:!0},collapsed:{type:Boolean,default:!1,reflect:!0},divider:{type:Boolean,default:!1,reflect:!0},heading:{type:String,default:"",reflect:!0}};static template=()=>null;#t=null;connected(){this.setAttribute("role","navigation"),this.heading&&this.setAttribute("aria-label",this.heading),this.addEventListener("click",this.#i),this.variant!=="section"&&typeof ResizeObserver<"u"&&(this.#t=new ResizeObserver(()=>this.#e()),this.#t.observe(this))}render(){this.heading?this.setAttribute("aria-label",this.heading):this.removeAttribute("aria-label"),this.variant!=="section"&&this.#e()}#e(){let t=this.collapsed||this.getBoundingClientRect().width<=96;for(let e of this.querySelectorAll(":scope > nav-group-ui")){let i=e.querySelector(':scope > [slot="header"]');i&&(i.title=t?e.text:"")}for(let e of this.querySelectorAll(":scope > nav-item-ui"))e.title=t?e.text:""}get selectedItem(){return this.querySelector("nav-item-ui[selected]")}select(t){let e=this.selectedItem;e&&e!==t&&e.removeAttribute("selected"),t&&(t.setAttribute("selected",""),this.dispatchEvent(new CustomEvent("nav-select",{bubbles:!0,detail:{item:t,text:t.text,value:t.value}})))}toggle(){this.variant!=="section"&&(this.collapsed=!this.collapsed)}#i=t=>{let e=t.target.closest("nav-item-ui");if(e&&this.contains(e)){if(e.disabled)return;this.select(e),this.#s();return}if(this.variant==="section")return;let i=t.target.closest("nav-group-ui");if(i&&this.contains(i))if(this.collapsed||this.getBoundingClientRect().width<=96){if(t.target.closest("[popover]"))return;i.showPopover?.()}else{let r=i.querySelector(':scope > [slot="header"]');r&&(t.target===r||r.contains(t.target))&&(i.open=!i.open)}};#s(){this.style.pointerEvents="none",requestAnimationFrame(()=>{this.style.pointerEvents=""})}disconnected(){this.removeEventListener("click",this.#i),this.#t?.disconnect(),this.#t=null}};x("nav-ui",Co);P();var Eo=class extends w{static properties={text:{type:String,default:"",reflect:!0},icon:{type:String,default:"",reflect:!0},badge:{type:String,default:"",reflect:!0},open:{type:Boolean,default:!1,reflect:!0},selected:{type:Boolean,default:!1,reflect:!0},collapsible:{type:Boolean,default:!0,reflect:!0},variant:{type:String,default:"",reflect:!0}};static template=()=>null;#t=null;#e=null;#i=null;#s=t=>{this.collapsible&&(t.key==="Enter"||t.key===" ")&&(t.preventDefault(),this.open=!this.open,this.dispatchEvent(new CustomEvent("group-toggle",{bubbles:!0,detail:{text:this.text,open:this.open}})))};connected(){this.setAttribute("role","group"),it(this,"header").length?this.#i=it(this,"header")[0]:(this.#i=document.createElement("div"),this.#i.setAttribute("slot","header"),this.#i.setAttribute("tabindex","0"),this.#i.innerHTML=`
247
247
  <span slot="icon">${this.icon?`<icon-ui name="${this.icon}"></icon-ui>`:""}</span>
248
248
  <span slot="text">${this.text}</span>
249
249
  ${this.badge?`<span slot="badge">${this.badge}</span>`:""}
250
250
  <icon-ui slot="caret" name="caret-right"></icon-ui>
251
- `,this.prepend(this.#i)),this.#i?.addEventListener("keydown",this.#s)}render(){let t=this.querySelector('[slot="header"] [slot="text"]');t&&(t.textContent=this.text);let e=this.querySelector('[slot="header"] [slot="badge"]');e&&(e.textContent=this.badge),this.setAttribute("aria-expanded",String(this.open));let i=this.querySelector('[slot="header"] [slot="icon"] icon-ui');i&&i.setAttribute("weight",this.open?"fill":"regular")}showPopover(){if(!this.#t){this.#t=document.createElement("div"),this.#t.setAttribute("slot","popover"),this.#t.setAttribute("popover","auto");let t=document.createElement("div");t.setAttribute("slot","popover-label"),t.textContent=this.text,this.#t.appendChild(t);for(let e of this.querySelectorAll(":scope > nav-item-ui")){let i=document.createElement("div");i.setAttribute("role","option"),i.dataset.sourceValue=e.getAttribute("value")||"",i.textContent=e.text,i.addEventListener("click",()=>{let n=this.closest("nav-ui");n&&n.select(e),this.#t.hidePopover()}),this.#t.appendChild(i)}this.appendChild(this.#t),this.#t.addEventListener("toggle",e=>{e.newState==="closed"&&(this.#e?.(),this.#e=null)})}for(let t of this.#t.querySelectorAll('[role="option"]')){let e=t.dataset.sourceValue;(e?this.querySelector(`:scope > nav-item-ui[value="${e}"]`):null)?.hasAttribute("selected")?(t.setAttribute("aria-current","page"),t.setAttribute("aria-selected","true")):(t.removeAttribute("aria-current"),t.removeAttribute("aria-selected"))}this.#t.showPopover(),this.#e?.(),this.#e=lt(this,this.#t,{placement:"right",gap:4})}disconnected(){this.#i?.removeEventListener("keydown",this.#s),this.#e?.(),this.#e=null,this.#t?.hidePopover?.()}};x("nav-group-ui",Eo);P();var Po=class extends w{static properties={text:{type:String,default:"",reflect:!0},icon:{type:String,default:"",reflect:!0},value:{type:String,default:"",reflect:!0},badge:{type:String,default:"",reflect:!0},selected:{type:Boolean,default:!1,reflect:!0},disabled:{type:Boolean,default:!1,reflect:!0},variant:{type:String,default:"",reflect:!0}};static template=()=>null;#t=t=>{if(this.disabled){t.preventDefault();return}this.closest("nav-ui")?.select?.(this),this.dispatchEvent(new CustomEvent("nav-select",{bubbles:!0,detail:{item:this,text:this.text,value:this.value}}))};#e=t=>{this.disabled||(t.key==="Enter"||t.key===" ")&&(t.preventDefault(),this.#t(t))};connected(){this.setAttribute("role","link"),this.setAttribute("tabindex",this.disabled?"-1":"0"),this.querySelector('[slot="text"]')||(this.innerHTML=`
251
+ `,this.prepend(this.#i)),this.#i?.addEventListener("keydown",this.#s)}render(){let t=this.querySelector('[slot="header"] [slot="text"]');t&&(t.textContent=this.text);let e=this.querySelector('[slot="header"] [slot="badge"]');e&&(e.textContent=this.badge),this.setAttribute("aria-expanded",String(this.open));let i=this.querySelector('[slot="header"] [slot="icon"] icon-ui');i&&i.setAttribute("weight",this.hasAttribute("selected")?"fill":"regular")}showPopover(){if(!this.#t){this.#t=document.createElement("div"),this.#t.setAttribute("slot","popover"),this.#t.setAttribute("popover","auto");let t=document.createElement("div");t.setAttribute("slot","popover-label"),t.textContent=this.text,this.#t.appendChild(t);for(let e of this.querySelectorAll(":scope > nav-item-ui")){let i=document.createElement("div");i.setAttribute("role","option"),i.dataset.sourceValue=e.getAttribute("value")||"",i.textContent=e.text,i.addEventListener("click",()=>{let n=this.closest("nav-ui");n&&n.select(e),this.#t.hidePopover()}),this.#t.appendChild(i)}this.appendChild(this.#t),this.#t.addEventListener("toggle",e=>{e.newState==="closed"&&(this.#e?.(),this.#e=null)})}for(let t of this.#t.querySelectorAll('[role="option"]')){let e=t.dataset.sourceValue;(e?this.querySelector(`:scope > nav-item-ui[value="${e}"]`):null)?.hasAttribute("selected")?(t.setAttribute("aria-current","page"),t.setAttribute("aria-selected","true")):(t.removeAttribute("aria-current"),t.removeAttribute("aria-selected"))}this.#t.showPopover(),this.#e?.(),this.#e=lt(this,this.#t,{placement:"right",gap:4})}disconnected(){this.#i?.removeEventListener("keydown",this.#s),this.#e?.(),this.#e=null,this.#t?.hidePopover?.()}};x("nav-group-ui",Eo);P();var Po=class extends w{static properties={text:{type:String,default:"",reflect:!0},icon:{type:String,default:"",reflect:!0},value:{type:String,default:"",reflect:!0},badge:{type:String,default:"",reflect:!0},selected:{type:Boolean,default:!1,reflect:!0},disabled:{type:Boolean,default:!1,reflect:!0},variant:{type:String,default:"",reflect:!0}};static template=()=>null;#t=t=>{if(this.disabled){t.preventDefault();return}this.closest("nav-ui")?.select?.(this),this.dispatchEvent(new CustomEvent("nav-select",{bubbles:!0,detail:{item:this,text:this.text,value:this.value}}))};#e=t=>{this.disabled||(t.key==="Enter"||t.key===" ")&&(t.preventDefault(),this.#t(t))};connected(){this.setAttribute("role","link"),this.setAttribute("tabindex",this.disabled?"-1":"0"),this.querySelector('[slot="text"]')||(this.innerHTML=`
252
252
  <span slot="icon">${this.icon?`<icon-ui name="${this.icon}"></icon-ui>`:""}</span>
253
253
  <span slot="text">${this.text}</span>
254
254
  ${this.badge?`<span slot="badge">${this.badge}</span>`:""}