@esri/calcite-components
Version:
Web Components for Esri's Calcite Design System.
6 lines • 24.8 kB
JavaScript
/*!
* All material copyright ESRI, All Rights Reserved, unless otherwise specified.
* See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
* v1.5.0-next.4
*/
import{r as i,c as t,h as e,H as n,a}from"./p-8789682d.js";import{t as o,i as r,j as s,f as c,v as l}from"./p-68f223ec.js";import{f as d,c as h,d as m,a as p,F as f,r as u}from"./p-0173dd24.js";import{g}from"./p-d2aa9245.js";import{c as w,u as v,d as b}from"./p-0d8324b6.js";import{i as y}from"./p-4929e834.js";import{c as k,s as x,a as D}from"./p-deebcc06.js";import{c as _}from"./p-c8e46b02.js";import{c as z,d as I}from"./p-dcddc7b6.js";import"./p-9280476e.js";import"./p-7fb6664e.js";import"./p-81620376.js";const E=class{constructor(e){i(this,e),this.calciteDropdownSelect=t(this,"calciteDropdownSelect",6),this.calciteDropdownBeforeClose=t(this,"calciteDropdownBeforeClose",6),this.calciteDropdownClose=t(this,"calciteDropdownClose",6),this.calciteDropdownBeforeOpen=t(this,"calciteDropdownBeforeOpen",6),this.calciteDropdownOpen=t(this,"calciteDropdownOpen",6),this.items=[],this.groups=[],this.mutationObserver=_("mutation",(()=>this.updateItems())),this.resizeObserver=_("resize",(i=>this.resizeObserverCallback(i))),this.openTransitionProp="opacity",this.guid=`calcite-dropdown-${g()}`,this.defaultAssignedElements=[],this.slotChangeHandler=i=>{this.defaultAssignedElements=i.target.assignedElements({flatten:!0}),this.updateItems()},this.setFilteredPlacements=()=>{const{el:i,flipPlacements:t}=this;this.filteredFlipPlacements=t?d(t,i):null},this.updateTriggers=i=>{this.triggers=i.target.assignedElements({flatten:!0}),this.reposition(!0)},this.updateItems=()=>{this.items=this.groups.map((i=>Array.from(i?.querySelectorAll("calcite-dropdown-item")))).reduce(((i,t)=>[...i,...t]),[]),this.updateSelectedItems(),this.reposition(!0)},this.updateGroups=i=>{const t=i.target.assignedElements({flatten:!0}).filter((i=>i?.matches("calcite-dropdown-group")));this.groups=t,this.updateItems()},this.resizeObserverCallback=i=>{i.forEach((i=>{const{target:t}=i;t===this.referenceEl?this.setDropdownWidth():t===this.scrollerEl&&this.setMaxScrollerHeight()}))},this.setDropdownWidth=()=>{const{referenceEl:i,scrollerEl:t}=this,e=i?.clientWidth;e&&t&&(t.style.minWidth=`${e}px`)},this.setMaxScrollerHeight=()=>{const{scrollerEl:i}=this;if(!i)return;this.reposition(!0);const t=this.getMaxScrollerHeight();i.style.maxHeight=t>0?`${t}px`:"",this.reposition(!0)},this.setScrollerAndTransitionEl=i=>{this.resizeObserver.observe(i),this.scrollerEl=i,this.transitionEl=i,z(this)},this.setReferenceEl=i=>{this.referenceEl=i,h(this,this.referenceEl,this.floatingEl),this.resizeObserver.observe(i)},this.setFloatingEl=i=>{this.floatingEl=i,h(this,this.referenceEl,this.floatingEl)},this.keyDownHandler=i=>{if(i.target!==this.referenceEl)return;const{defaultPrevented:t,key:e}=i;if(!t){if(this.open){if("Escape"===e)return this.closeCalciteDropdown(),void i.preventDefault();if(i.shiftKey&&"Tab"===e)return this.closeCalciteDropdown(),void i.preventDefault()}y(e)?(this.openCalciteDropdown(),i.preventDefault()):"Escape"===e&&(this.closeCalciteDropdown(),i.preventDefault())}},this.focusOnFirstActiveOrFirstItem=()=>{this.getFocusableElement(this.items.find((i=>i.selected))||this.items[0])},this.toggleOpenEnd=()=>{this.focusOnFirstActiveOrFirstItem(),this.el.removeEventListener("calciteDropdownOpen",this.toggleOpenEnd)},this.openCalciteDropdown=()=>{this.open=!this.open,this.open&&this.el.addEventListener("calciteDropdownOpen",this.toggleOpenEnd)},this.open=!1,this.closeOnSelectDisabled=!1,this.disabled=!1,this.flipPlacements=void 0,this.maxItems=0,this.overlayPositioning="absolute",this.placement=m,this.scale="m",this.selectedItems=[],this.type="click",this.width=void 0}openHandler(i){this.disabled?this.open=!1:i&&this.reposition(!0)}handleDisabledChange(i){i||(this.open=!1)}flipPlacementsHandler(){this.setFilteredPlacements(),this.reposition(!0)}maxItemsHandler(){this.setMaxScrollerHeight()}overlayPositioningHandler(){this.reposition(!0)}placementHandler(){this.reposition(!0)}async setFocus(){await k(this),this.el.focus()}connectedCallback(){this.mutationObserver?.observe(this.el,{childList:!0,subtree:!0}),this.setFilteredPlacements(),this.reposition(!0),this.open&&this.openHandler(this.open),w(this),z(this)}componentWillLoad(){x(this)}componentDidLoad(){D(this),this.reposition(!0)}componentDidRender(){v(this)}disconnectedCallback(){this.mutationObserver?.disconnect(),this.resizeObserver?.disconnect(),b(this),p(this,this.referenceEl,this.floatingEl),I(this)}render(){const{open:i,guid:t}=this;return e(n,null,e("div",{class:"calcite-trigger-container",id:`${t}-menubutton`,onClick:this.openCalciteDropdown,onKeyDown:this.keyDownHandler,ref:this.setReferenceEl},e("slot",{"aria-controls":`${t}-menu`,"aria-expanded":o(i),"aria-haspopup":"menu",name:"trigger",onSlotchange:this.updateTriggers})),e("div",{"aria-hidden":o(!i),class:"calcite-dropdown-wrapper",ref:this.setFloatingEl},e("div",{"aria-labelledby":`${t}-menubutton`,class:{"calcite-dropdown-content":!0,[f.animation]:!0,[f.animationActive]:i},id:`${t}-menu`,role:"menu",ref:this.setScrollerAndTransitionEl},e("slot",{onSlotchange:this.updateGroups}))))}async reposition(i=!1){const{floatingEl:t,referenceEl:e,placement:n,overlayPositioning:a,filteredFlipPlacements:o}=this;return u(this,{floatingEl:t,referenceEl:e,overlayPositioning:a,placement:n,flipPlacements:o,type:"menu"},i)}closeCalciteDropdownOnClick(i){!this.disabled&&r(i)&&this.open&&!i.composedPath().includes(this.el)&&this.closeCalciteDropdown(!1)}closeCalciteDropdownOnEvent(i){this.closeCalciteDropdown(),i.stopPropagation()}closeCalciteDropdownOnOpenEvent(i){i.composedPath().includes(this.el)||(this.open=!1)}pointerEnterHandler(){this.disabled||"hover"!==this.type||this.openCalciteDropdown()}pointerLeaveHandler(){this.disabled||"hover"!==this.type||this.closeCalciteDropdown()}calciteInternalDropdownItemKeyEvent(i){const{keyboardEvent:t}=i.detail,e=t.target;switch(t.key){case"Tab":this.items.indexOf(e)!==this.items.length-1||t.shiftKey?0===this.items.indexOf(e)&&t.shiftKey&&this.closeCalciteDropdown():this.closeCalciteDropdown();break;case"ArrowDown":s(this.items,e,"next");break;case"ArrowUp":s(this.items,e,"previous");break;case"Home":s(this.items,e,"first");break;case"End":s(this.items,e,"last")}i.stopPropagation()}handleItemSelect(i){this.updateSelectedItems(),i.stopPropagation(),this.calciteDropdownSelect.emit(),this.closeOnSelectDisabled&&"none"!==i.detail.requestedDropdownGroup.selectionMode||this.closeCalciteDropdown(),i.stopPropagation()}onBeforeOpen(){this.calciteDropdownBeforeOpen.emit()}onOpen(){this.calciteDropdownOpen.emit()}onBeforeClose(){this.calciteDropdownBeforeClose.emit()}onClose(){this.calciteDropdownClose.emit()}updateSelectedItems(){this.selectedItems=this.items.filter((i=>i.selected))}getMaxScrollerHeight(){const{maxItems:i,items:t}=this;let e,n=0,a=0;return this.groups.forEach((t=>{i>0&&n<i&&Array.from(t.children).forEach(((t,o)=>{0===o&&(isNaN(e)&&(e=t.offsetTop),a+=e),n<i&&(a+=t.offsetHeight,n+=1)}))})),t.length>i?a:0}closeCalciteDropdown(i=!0){this.open=!1,i&&c(this.triggers[0])}getFocusableElement(i){if(!i)return;const t=i.attributes.isLink?i.shadowRoot.querySelector("a"):i;c(t)}static get delegatesFocus(){return!0}get el(){return a(this)}static get watchers(){return{open:["openHandler"],disabled:["handleDisabledChange"],flipPlacements:["flipPlacementsHandler"],maxItems:["maxItemsHandler"],overlayPositioning:["overlayPositioningHandler"],placement:["placementHandler"]}}};E.style="@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-right{0%{opacity:0;transform:translate3D(-5px, 0, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-left{0%{opacity:0;transform:translate3D(5px, 0, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-right{animation-name:in-right}.calcite-animate__in-left{animation-name:in-left}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing);--calcite-floating-ui-z-index:var(--calcite-app-z-index-dropdown)}:host([hidden]){display:none}:host([disabled]){cursor:default;-webkit-user-select:none;user-select:none;opacity:var(--calcite-ui-opacity-disabled)}:host([disabled]) *,:host([disabled]) ::slotted(*){pointer-events:none}:host{display:inline-flex;flex:0 1 auto}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}:host .calcite-dropdown-wrapper{--calcite-floating-ui-z-index:var(--calcite-app-z-index-dropdown);display:block;position:absolute;z-index:var(--calcite-floating-ui-z-index);visibility:hidden}.calcite-dropdown-wrapper .calcite-floating-ui-anim{position:relative;transition:var(--calcite-floating-ui-transition);transition-property:transform, visibility, opacity;opacity:0;box-shadow:0 0 16px 0 rgba(0, 0, 0, 0.16);z-index:var(--calcite-app-z-index);border-radius:0.25rem}.calcite-dropdown-wrapper[data-placement^=bottom] .calcite-floating-ui-anim{transform:translateY(-5px)}.calcite-dropdown-wrapper[data-placement^=top] .calcite-floating-ui-anim{transform:translateY(5px)}.calcite-dropdown-wrapper[data-placement^=left] .calcite-floating-ui-anim{transform:translateX(5px)}.calcite-dropdown-wrapper[data-placement^=right] .calcite-floating-ui-anim{transform:translateX(-5px)}.calcite-dropdown-wrapper[data-placement] .calcite-floating-ui-anim--active{opacity:1;transform:translate(0)}:host([open]) .calcite-dropdown-wrapper{visibility:visible}:host .calcite-dropdown-content{max-block-size:45vh;inline-size:auto;overflow-y:auto;overflow-x:hidden;background-color:var(--calcite-ui-foreground-1);inline-size:var(--calcite-dropdown-width)}.calcite-trigger-container{position:relative;display:flex;flex:1 1 auto;word-wrap:break-word;word-break:break-word}@media (forced-colors: active){:host([open]) .calcite-dropdown-wrapper{border:1px solid canvasText}}:host([width=s]){--calcite-dropdown-width:12rem}:host([width=m]){--calcite-dropdown-width:14rem}:host([width=l]){--calcite-dropdown-width:16rem}";const C=class{constructor(e){i(this,e),this.calciteInternalDropdownItemChange=t(this,"calciteInternalDropdownItemChange",6),this.groupTitle=void 0,this.selectionMode="single",this.scale=void 0}componentWillLoad(){this.groupPosition=this.getGroupPosition()}render(){const i=this.scale||l(this.el,"scale","m"),t=this.groupTitle?e("span",{"aria-hidden":"true",class:"dropdown-title"},this.groupTitle):null,a=this.groupPosition>0?e("div",{class:"dropdown-separator",role:"separator"}):null;return e(n,{"aria-label":this.groupTitle,role:"group"},e("div",{class:{container:!0,"container--s":"s"===i,"container--m":"m"===i,"container--l":"l"===i},title:this.groupTitle},a,t,e("slot",null)))}updateActiveItemOnChange(i){this.requestedDropdownGroup=i.detail.requestedDropdownGroup,this.requestedDropdownItem=i.detail.requestedDropdownItem,this.calciteInternalDropdownItemChange.emit({requestedDropdownGroup:this.requestedDropdownGroup,requestedDropdownItem:this.requestedDropdownItem})}getGroupPosition(){return Array.prototype.indexOf.call(this.el.parentElement.querySelectorAll("calcite-dropdown-group"),this.el)}static get delegatesFocus(){return!0}get el(){return a(this)}};C.style="@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-right{0%{opacity:0;transform:translate3D(-5px, 0, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-left{0%{opacity:0;transform:translate3D(5px, 0, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-right{animation-name:in-right}.calcite-animate__in-left{animation-name:in-left}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing);--calcite-floating-ui-z-index:var(--calcite-app-z-index-dropdown)}:host([hidden]){display:none}:host{position:relative;display:block}.container{text-align:start}.container--s{font-size:var(--calcite-font-size--2);line-height:1rem}.container--s .dropdown-title{padding:0.5rem}.container--m{font-size:var(--calcite-font-size--1);line-height:1rem}.container--m .dropdown-title{padding:0.75rem}.container--l{font-size:var(--calcite-font-size-0);line-height:1.25rem}.container--l .dropdown-title{padding:1rem}.dropdown-title{margin-block-end:-1px;display:block;cursor:default;overflow-wrap:break-word;border-width:0px;border-block-end-width:1px;border-style:solid;border-color:var(--calcite-ui-border-3);font-weight:var(--calcite-font-weight-bold);color:var(--calcite-ui-text-2)}.dropdown-separator{display:block;block-size:1px;background-color:var(--calcite-ui-border-3)}";const H=class{constructor(e){i(this,e),this.calciteDropdownItemSelect=t(this,"calciteDropdownItemSelect",6),this.calciteInternalDropdownItemSelect=t(this,"calciteInternalDropdownItemSelect",6),this.calciteInternalDropdownItemKeyEvent=t(this,"calciteInternalDropdownItemKeyEvent",6),this.calciteInternalDropdownCloseRequest=t(this,"calciteInternalDropdownCloseRequest",6),this.scale="m",this.selected=!1,this.iconFlipRtl=void 0,this.iconStart=void 0,this.iconEnd=void 0,this.href=void 0,this.label=void 0,this.rel=void 0,this.target=void 0}async setFocus(){await k(this),this.el?.focus()}componentWillLoad(){x(this),this.initialize()}componentDidLoad(){D(this)}connectedCallback(){this.initialize()}render(){const i=l(this.el,"scale",this.scale),t=e("calcite-icon",{class:"dropdown-item-icon-start",flipRtl:"start"===this.iconFlipRtl||"both"===this.iconFlipRtl,icon:this.iconStart,scale:"l"===i?"m":"s"}),a=e("span",{class:"dropdown-item-content"},e("slot",null)),r=e("calcite-icon",{class:"dropdown-item-icon-end",flipRtl:"end"===this.iconFlipRtl||"both"===this.iconFlipRtl,icon:this.iconEnd,scale:"l"===i?"m":"s"}),s=this.iconStart&&this.iconEnd?[t,a,r]:this.iconStart?[t,a]:this.iconEnd?[a,r]:a,c=this.href?e("a",{"aria-label":this.label,class:"dropdown-link",href:this.href,rel:this.rel,tabIndex:-1,target:this.target,ref:i=>this.childLink=i},s):s,d=this.href?null:"single"===this.selectionMode?"menuitemradio":"multiple"===this.selectionMode?"menuitemcheckbox":"menuitem",h="none"!==this.selectionMode?o(this.selected):null;return e(n,{"aria-checked":h,role:d,tabindex:"0"},e("div",{class:{container:!0,"container--link":!!this.href,"container--s":"s"===i,"container--m":"m"===i,"container--l":"l"===i,"container--multi-selection":"multiple"===this.selectionMode,"container--single-selection":"single"===this.selectionMode,"container--none-selection":"none"===this.selectionMode}},"none"!==this.selectionMode?e("calcite-icon",{class:"dropdown-item-icon",icon:"multiple"===this.selectionMode?"check":"bullet-point",scale:"l"===i?"m":"s"}):null,c))}onClick(){this.emitRequestedItem()}keyDownHandler(i){switch(i.key){case" ":case"Enter":this.emitRequestedItem(),this.href&&this.childLink.click(),i.preventDefault();break;case"Escape":this.calciteInternalDropdownCloseRequest.emit(),i.preventDefault();break;case"Tab":this.calciteInternalDropdownItemKeyEvent.emit({keyboardEvent:i});break;case"ArrowUp":case"ArrowDown":case"Home":case"End":i.preventDefault(),this.calciteInternalDropdownItemKeyEvent.emit({keyboardEvent:i})}}updateActiveItemOnChange(i){i.composedPath().includes(this.parentDropdownGroupEl)&&(this.requestedDropdownGroup=i.detail.requestedDropdownGroup,this.requestedDropdownItem=i.detail.requestedDropdownItem,this.determineActiveItem()),i.stopPropagation()}initialize(){this.selectionMode=l(this.el,"selection-mode","single"),this.parentDropdownGroupEl=this.el.closest("calcite-dropdown-group"),"none"===this.selectionMode&&(this.selected=!1)}determineActiveItem(){switch(this.selectionMode){case"multiple":this.el===this.requestedDropdownItem&&(this.selected=!this.selected);break;case"single":this.el===this.requestedDropdownItem?this.selected=!0:this.requestedDropdownGroup===this.parentDropdownGroupEl&&(this.selected=!1);break;case"none":this.selected=!1}}emitRequestedItem(){this.calciteDropdownItemSelect.emit(),this.calciteInternalDropdownItemSelect.emit({requestedDropdownItem:this.el,requestedDropdownGroup:this.parentDropdownGroupEl})}get el(){return a(this)}};H.style="@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-right{0%{opacity:0;transform:translate3D(-5px, 0, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-left{0%{opacity:0;transform:translate3D(5px, 0, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-right{animation-name:in-right}.calcite-animate__in-left{animation-name:in-left}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing);--calcite-floating-ui-z-index:var(--calcite-app-z-index-dropdown)}:host([hidden]){display:none}.container--s{padding-block:0.25rem;font-size:var(--calcite-font-size--2);line-height:1rem;padding-inline-end:0.5rem;padding-inline-start:1.5rem}.container--m{padding-block:0.5rem;font-size:var(--calcite-font-size--1);line-height:1rem;padding-inline-end:0.75rem;padding-inline-start:2rem}.container--l{padding-block:0.625rem;font-size:var(--calcite-font-size-0);line-height:1.25rem;padding-inline-end:1rem;padding-inline-start:2.5rem}.container--s.container--none-selection{padding-inline-start:0.25rem}.container--s.container--none-selection .dropdown-link{padding-inline-start:0px}.container--m.container--none-selection{padding-inline-start:0.5rem}.container--m.container--none-selection .dropdown-link{padding-inline-start:0px}.container--l.container--none-selection{padding-inline-start:0.75rem}.container--l.container--none-selection .dropdown-link{padding-inline-start:0px}:host{position:relative;display:flex;flex-grow:1;align-items:center}.container{position:relative;display:flex;flex-grow:1;cursor:pointer;align-items:center;color:var(--calcite-ui-text-3);text-decoration-line:none;transition-duration:150ms;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);text-align:start}.dropdown-item-content{flex:1 1 auto;padding-block:0.125rem;padding-inline-end:auto;padding-inline-start:0.25rem}:host,.container--link a{outline-color:transparent}:host(:focus){outline:2px solid transparent;outline-offset:2px;outline:2px solid var(--calcite-ui-focus-color, var(--calcite-ui-brand));outline-offset:calc(\n -2px *\n calc(\n 1 -\n 2 * clamp(\n 0,\n var(--calcite-ui-focus-offset-invert),\n 1\n )\n )\n )}.container--link{padding:0px}.container--link a{position:relative;display:flex;flex-grow:1;cursor:pointer;align-items:center;color:var(--calcite-ui-text-3);text-decoration-line:none;transition-duration:150ms;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.container--s .dropdown-link{padding-block:0.25rem;font-size:var(--calcite-font-size--2);line-height:1rem;padding-inline-end:0.5rem;padding-inline-start:1.5rem}.container--m .dropdown-link{padding-block:0.5rem;font-size:var(--calcite-font-size--1);line-height:1rem;padding-inline-end:0.75rem;padding-inline-start:2rem}.container--l .dropdown-link{padding-block:0.75rem;font-size:var(--calcite-font-size-0);line-height:1.25rem;padding-inline-end:1rem;padding-inline-start:2.5rem}:host(:hover) .container,:host(:active) .container{background-color:var(--calcite-ui-foreground-2);color:var(--calcite-ui-text-1);text-decoration-line:none}:host(:hover) .container--link .dropdown-link,:host(:active) .container--link .dropdown-link{color:var(--calcite-ui-text-1)}:host(:focus) .container{color:var(--calcite-ui-text-1);text-decoration-line:none}:host(:active) .container{background-color:var(--calcite-ui-foreground-3)}:host(:hover) .container:before,:host(:active) .container:before,:host(:focus) .container:before{opacity:1}:host([selected]) .container:not(.container--none-selection),:host([selected]) .container--link .dropdown-link{font-weight:var(--calcite-font-weight-medium);color:var(--calcite-ui-text-1)}:host([selected]) .container:not(.container--none-selection):before,:host([selected]) .container--link .dropdown-link:before{opacity:1;color:var(--calcite-ui-brand)}:host([selected]) .container:not(.container--none-selection) calcite-icon,:host([selected]) .container--link .dropdown-link calcite-icon{color:var(--calcite-ui-brand)}.container--multi-selection:before,.container--none-selection:before{display:none}.container--s:before{inset-inline-start:0.5rem}.container--m:before{inset-inline-start:0.75rem}.container--l:before{inset-inline-start:1rem}.dropdown-item-icon{position:absolute;opacity:0;transition-duration:150ms;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transform:scale(0.9)}.container--s .dropdown-item-icon{inset-inline-start:0.25rem}.container--m .dropdown-item-icon{inset-inline-start:0.5rem}.container--l .dropdown-item-icon{inset-inline-start:0.75rem}:host(:hover) .dropdown-item-icon{color:var(--calcite-ui-border-1);opacity:1}:host([selected]) .dropdown-item-icon{color:var(--calcite-ui-brand);opacity:1}.container--s .dropdown-item-icon-start{margin-inline-end:0.5rem;margin-inline-start:0.25rem}.container--s .dropdown-item-icon-end{margin-inline-start:0.5rem}.container--m .dropdown-item-icon-start{margin-inline-end:0.75rem;margin-inline-start:0.25rem}.container--m .dropdown-item-icon-end{margin-inline-start:0.75rem}.container--l .dropdown-item-icon-start{margin-inline-end:1rem;margin-inline-start:0.25rem}.container--l .dropdown-item-icon-end{margin-inline-start:1rem}";export{E as calcite_dropdown,C as calcite_dropdown_group,H as calcite_dropdown_item}