@ukic/web-components 3.29.0 → 3.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/ic-accordion.js +53 -38
- package/components/ic-accordion.js.map +1 -1
- package/components/ic-button2.js +1 -1
- package/components/ic-button2.js.map +1 -1
- package/components/ic-link2.js +1 -1
- package/components/ic-link2.js.map +1 -1
- package/components/ic-menu-item2.js +1 -1
- package/components/ic-menu-item2.js.map +1 -1
- package/components/ic-menu2.js +276 -37
- package/components/ic-menu2.js.map +1 -1
- package/components/ic-navigation-button.js +8 -5
- package/components/ic-navigation-button.js.map +1 -1
- package/components/ic-navigation-group.js +9 -5
- package/components/ic-navigation-group.js.map +1 -1
- package/components/ic-radio-group.js +3 -3
- package/components/ic-radio-group.js.map +1 -1
- package/components/ic-side-navigation.js.map +1 -1
- package/components/ic-switch.js.map +1 -1
- package/dist/cjs/ic-accordion.cjs.entry.js +53 -38
- package/dist/cjs/ic-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js +1 -1
- package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js +276 -37
- package/dist/cjs/ic-input-component-container_3.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-link.cjs.entry.js +1 -1
- package/dist/cjs/ic-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js +1 -1
- package/dist/cjs/ic-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-button.cjs.entry.js +8 -5
- package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-navigation-group.cjs.entry.js +9 -5
- package/dist/cjs/ic-navigation-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-radio-group.cjs.entry.js +3 -3
- package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ic-section-container.cjs.entry.js.map +1 -1
- package/dist/collection/components/ic-accordion/ic-accordion.js +53 -38
- package/dist/collection/components/ic-accordion/ic-accordion.js.map +1 -1
- package/dist/collection/components/ic-button/ic-button.css +6 -0
- package/dist/collection/components/ic-link/ic-link.css +4 -0
- package/dist/collection/components/ic-menu/ic-menu.css +14 -5
- package/dist/collection/components/ic-menu-item/ic-menu-item.css +13 -6
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +8 -5
- package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js +9 -5
- package/dist/collection/components/ic-navigation-group/ic-navigation-group.js.map +1 -1
- package/dist/collection/components/ic-radio-group/ic-radio-group.js +3 -3
- package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
- package/dist/collection/utils/common-helpers.js +1 -1
- package/dist/collection/utils/common-helpers.js.map +1 -1
- package/dist/components/ic-accordion.js +53 -38
- package/dist/components/ic-accordion.js.map +1 -1
- package/dist/components/ic-button2.js +1 -1
- package/dist/components/ic-button2.js.map +1 -1
- package/dist/components/ic-hero.js.map +1 -1
- package/dist/components/ic-link2.js +1 -1
- package/dist/components/ic-link2.js.map +1 -1
- package/dist/components/ic-menu-item2.js +1 -1
- package/dist/components/ic-menu-item2.js.map +1 -1
- package/dist/components/ic-menu2.js +276 -37
- package/dist/components/ic-menu2.js.map +1 -1
- package/dist/components/ic-navigation-button.js +8 -5
- package/dist/components/ic-navigation-button.js.map +1 -1
- package/dist/components/ic-navigation-group.js +9 -5
- package/dist/components/ic-navigation-group.js.map +1 -1
- package/dist/components/ic-radio-group.js +3 -3
- package/dist/components/ic-radio-group.js.map +1 -1
- package/dist/components/ic-switch.js.map +1 -1
- package/dist/core/core.esm.js +1 -1
- package/dist/core/{p-9ced00a7.entry.js → p-41bbdc4c.entry.js} +2 -2
- package/dist/core/{p-9ced00a7.entry.js.map → p-41bbdc4c.entry.js.map} +1 -1
- package/dist/core/p-51fc7809.entry.js +2 -0
- package/dist/core/p-51fc7809.entry.js.map +1 -0
- package/dist/core/{p-e5266c19.entry.js → p-67048b2e.entry.js} +2 -2
- package/dist/core/{p-e5266c19.entry.js.map → p-67048b2e.entry.js.map} +1 -1
- package/dist/core/p-756b4cb3.entry.js +2 -0
- package/dist/core/p-756b4cb3.entry.js.map +1 -0
- package/dist/core/p-78e56db1.entry.js +2 -0
- package/dist/core/p-78e56db1.entry.js.map +1 -0
- package/dist/core/{p-1cfaa962.entry.js → p-95849ac2.entry.js} +2 -2
- package/dist/core/p-95849ac2.entry.js.map +1 -0
- package/dist/core/{p-fc4b7d2b.entry.js → p-9cf35c23.entry.js} +2 -2
- package/dist/core/p-9cf35c23.entry.js.map +1 -0
- package/dist/core/p-a8d98164.entry.js.map +1 -1
- package/dist/core/p-e5178830.entry.js +3 -0
- package/dist/core/p-e5178830.entry.js.map +1 -0
- package/dist/esm/ic-accordion.entry.js +53 -38
- package/dist/esm/ic-accordion.entry.js.map +1 -1
- package/dist/esm/ic-button_3.entry.js +1 -1
- package/dist/esm/ic-button_3.entry.js.map +1 -1
- package/dist/esm/ic-input-component-container_3.entry.js +276 -37
- package/dist/esm/ic-input-component-container_3.entry.js.map +1 -1
- package/dist/esm/ic-link.entry.js +1 -1
- package/dist/esm/ic-link.entry.js.map +1 -1
- package/dist/esm/ic-menu-item.entry.js +1 -1
- package/dist/esm/ic-menu-item.entry.js.map +1 -1
- package/dist/esm/ic-navigation-button.entry.js +8 -5
- package/dist/esm/ic-navigation-button.entry.js.map +1 -1
- package/dist/esm/ic-navigation-group.entry.js +9 -5
- package/dist/esm/ic-navigation-group.entry.js.map +1 -1
- package/dist/esm/ic-radio-group.entry.js +3 -3
- package/dist/esm/ic-radio-group.entry.js.map +1 -1
- package/dist/esm/ic-section-container.entry.js.map +1 -1
- package/dist/types/components/ic-accordion/ic-accordion.d.ts +2 -0
- package/dist/types/components/ic-navigation-group/ic-navigation-group.d.ts +1 -0
- package/hydrate/index.js +351 -90
- package/hydrate/index.mjs +351 -90
- package/package.json +4 -2
- package/dist/core/p-1cfaa962.entry.js.map +0 -1
- package/dist/core/p-305d9639.entry.js +0 -3
- package/dist/core/p-305d9639.entry.js.map +0 -1
- package/dist/core/p-98dee727.entry.js +0 -2
- package/dist/core/p-98dee727.entry.js.map +0 -1
- package/dist/core/p-be8bbed8.entry.js +0 -2
- package/dist/core/p-be8bbed8.entry.js.map +0 -1
- package/dist/core/p-c0b70c08.entry.js +0 -2
- package/dist/core/p-c0b70c08.entry.js.map +0 -1
- package/dist/core/p-fc4b7d2b.entry.js.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as i,c as t,h as e,H as o,g as n}from"./p-8e4e97b4.js";import{D as a,g as s,f as r,A as d}from"./p-eeb8d98a.js";import{C as h}from"./p-3b185c32.js";import"./p-6215e2ae.js";const p='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--ic-typography-color:currentcolor}:host(.in-side-menu){border-bottom:var(--ic-border-width) solid\n var(--ic-divider-background-monochrome);padding:var(--ic-space-md) 0}:host .navigation-group{height:100%;width:-moz-fit-content;width:fit-content;color:var(--ic-brand-text-color);display:flex;gap:var(--ic-space-xxs);align-items:center;justify-content:center;padding:0 var(--ic-space-md);transition:var(--ic-easing-transition-slow);position:relative;background:none;border:none;text-align:left;box-sizing:border-box}:host .navigation-group:hover,:host .navigation-group:active,:host .selected{background-color:var(--ic-architectural-20);color:var(--ic-color-text-primary-light);outline:none;cursor:pointer}:host(.in-side-menu) .navigation-group{min-height:2.5rem;width:100%;gap:1.25rem}:host(.in-side-menu) .navigation-group .ic-typography-label{width:100%}:host(.in-side-menu:not(.ic-navigation-group-expandable)) .navigation-group,:host(.in-side-menu) .navigation-group-side-menu-collapsed,:host(.in-side-menu) .navigation-group-side-menu-expanded{color:var(--ic-top-navigation-nav-group-link);justify-content:flex-start;padding:var(--ic-space-xs) var(--ic-space-md)}:host(.in-side-menu) .navigation-group-side-menu-expanded{margin-bottom:var(--ic-space-xs)}:host(.in-side-menu) .navigation-group-side-menu-collapsed::after,:host(.in-side-menu) .navigation-group-side-menu-expanded::after{border-style:solid;border-width:0.125em 0.125em 0 0;content:"";display:inline-block;min-height:0.45em;position:relative;top:-0.1em;transform:rotate(135deg);vertical-align:top;min-width:0.45em}:host(.in-side-menu) .navigation-group-side-menu-expanded::after{top:0.15em;transform:rotate(-45deg)}:host(:not(.in-side-menu)) .navigation-group:focus{box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);outline:var(--ic-hc-focus-outline);z-index:var(--ic-z-index-navigation-item);transition:box-shadow var(--ic-easing-transition-fast)}:host(.in-side-menu) .navigation-group-side-menu-expanded:hover:not(:focus),:host(.in-side-menu) .navigation-group-side-menu-collapsed:hover:not(:focus){background-color:var(--ic-top-navigation-nav-group-hover);cursor:pointer}:host(.in-side-menu) .navigation-group-side-menu-expanded:active:not(:focus),:host(.in-side-menu) .navigation-group-side-menu-collapsed:active:not(:focus){background-color:var(--ic-top-navigation-nav-group-pressed)}:host(.in-side-menu) .navigation-group-side-menu-expanded:focus,:host(.in-side-menu) .navigation-group-side-menu-collapsed:focus{box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);outline:var(--ic-hc-focus-outline);background:none}:host .navigation-group-dropdown{background-color:var(--ic-top-navigation-menu-background);border-bottom:var(--ic-space-1px) solid var(--ic-top-navigation-menu-border);position:absolute;left:0;right:0;padding:var(--ic-space-xs) var(--ic-space-md);box-shadow:0 0.375rem 0.5rem -0.375rem rgba(0 0 0 / 20%);z-index:calc(var(--ic-z-index-navigation-item) - 1)}:host .navigation-group-dropdown-items-list{list-style:none;display:flex;flex-flow:column wrap;align-content:flex-start;padding-left:var(--ic-space-md);max-height:16.5rem}:host .chevron-toggle-icon-wrapper{display:flex;align-items:center}:host .chevron-toggle-icon-wrapper svg{transform:rotate(90deg);height:var(--ic-space-lg);width:var(--ic-space-lg)}:host .chevron-toggle-icon-closed svg{transform:rotate(-90deg)}#nav-group-title{text-wrap:nowrap}:host(.in-side-menu) #nav-group-title{text-wrap:wrap}:host(.ic-navigation-group-side-nav) #nav-group-title{text-wrap:wrap}:host(.ic-navigation-group-expanded) .grouped-links-wrapper{height:var(--navigation-child-items-height, auto) !important;transition:var(--ic-easing-transition-slow);overflow:hidden}:host(.ic-navigation-group-side-nav) .link,:host(.ic-navigation-group-side-nav) ::slotted(a){height:var(--navigation-child-items-height, auto)}:host(.ic-navigation-group-collapsed) .grouped-links-wrapper{height:0;transition:var(--ic-easing-transition-slow);overflow:hidden}:host(.ic-navigation-group-side-nav) .navigation-group{min-height:var(--navigation-group-height);height:-moz-fit-content;height:fit-content;min-width:100%;width:var(--navigation-group-width, auto);justify-content:var(--navigation-group-justify-content);padding:var(--ic-space-md) var(--navigation-group-expand-toggle-padding)\n var(--ic-space-xs) var(--ic-space-md)}:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable)) .navigation-group{padding-right:var(--ic-space-md)}:host(.ic-navigation-group-side-nav) .navigation-group:hover,:host(.ic-navigation-group-side-nav) .navigation-group:active,:host(.ic-navigation-group-side-nav) .selected{background-color:var(--navigation-group-hover);color:var(--navigation-group-text-hover)}:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable)) .navigation-group:hover,:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable)) .navigation-group:active,:host(.in-side-menu:not(.ic-navigation-group-expandable)) .navigation-group:hover,:host(.in-side-menu:not(.ic-navigation-group-expandable)) .navigation-group:active{background:none;cursor:auto}:host(.ic-navigation-group-side-nav) .navigation-group:focus{box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);background:none}:host(.ic-navigation-group-side-nav) .ic-typography-caption{position:var(--navigation-group-title-position);left:var(--navigation-group-title-position-left)}@media (prefers-reduced-motion: reduce){:host .navigation-group,:host(:not(.in-side-menu)) .navigation-group:focus,:host(.ic-navigation-group-expanded) .grouped-links-wrapper,:host(.ic-navigation-group-collapsed) .grouped-links-wrapper{transition:none}}';const u=p;const c="ic-navigation-item";const g=100;const l="IC-NAVIGATION-GROUP";const v=class{constructor(o){i(this,o);this.navigationGroupOpened=t(this,"navigationGroupOpened",7);this.navigationGroupExpanded=t(this,"navigationGroupExpanded",7);this.allGroupedNavigationItemHeights="";this.collapsedNavItemsHeight=null;this.expandedNavItemsHeight=null;this.mouseGate=false;this.deviceSize=a.XL;this.dropdownOpen=false;this.focusStyle=s();this.inTopNavSideMenu=false;this.isSideNavExpanded=false;this.expandable=false;this.expanded=true;this.theme="inherit";this.sideNavExpandHandler=i=>{this.isSideNavExpanded=i.detail.sideNavExpanded;if(!this.linkWrapper||!this.expanded)return;const t=this.isSideNavExpanded?this.expandedNavItemsHeight:this.collapsedNavItemsHeight;if(t){this.setGroupedLinksElementHeight(t)}else{setTimeout((()=>{if(this.isSideNavExpanded){this.expandedNavItemsHeight=this.allGroupedNavigationItemHeights}else{this.collapsedNavItemsHeight=this.allGroupedNavigationItemHeights}this.setGroupedLinksElementHeight(this.allGroupedNavigationItemHeights)}),g)}};this.topNavResizedHandler=({detail:{size:i}})=>{var t;if(i===this.deviceSize)return;this.deviceSize=i;this.inTopNavSideMenu=i<=(((t=this.parentEl)===null||t===void 0?void 0:t.customMobileBreakpoint)||a.L)};this.toggleExpanded=()=>{this.expanded=!this.expanded;if(!this.linkWrapper)return;this.setGroupedLinksElementHeight(!this.expanded?"0":this.isSideNavExpanded?this.expandedNavItemsHeight:this.collapsedNavItemsHeight);this.el.querySelectorAll(c).forEach((i=>{var t;const e=((t=i.shadowRoot)===null||t===void 0?void 0:t.querySelector("a"))||i.querySelector("a");e===null||e===void 0?void 0:e.setAttribute("tabindex",this.expanded?"0":"-1")}))};this.handleClick=i=>{if(this.navigationType==="top"&&i.detail){this.toggleDropdown()}else{this.toggleExpanded()}};this.handleBlur=i=>{if(!this.el.contains(i.relatedTarget)){this.hideDropdown()}};this.handleKeydown=i=>{const{key:t}=i;if(t!=="Enter"&&t!==" "&&t!=="Escape")return;switch(this.navigationType){case"top":if(t===" "||t==="Enter"){this.toggleDropdown()}else if(!this.inTopNavSideMenu){this.hideDropdown()}break;case"side":this.toggleExpanded();i.preventDefault();break;default:this.toggleExpanded();break}};this.handleMouseLeave=i=>{const t=i.relatedTarget;this.mouseGate=false;if(this.el.contains(t)||t===this.dropdown||this.el.contains(document.activeElement))return;if(document.activeElement!==this.el&&(t===null||t===void 0?void 0:t.nodeName)===l&&this.dropdownOpen){this.mouseGate=true;this.hideDropdown()}else{this.mouseGate=false;setTimeout((()=>{this.dropdownOpen?this.hideDropdown():null}),500)}};this.handleMouseEnter=i=>{const t=i.relatedTarget;document.addEventListener("keydown",this.handleKeydown);if((t===null||t===void 0?void 0:t.nodeName)===l&&this.mouseGate){this.showDropdown()}else if(!this.dropdownOpen&&!this.mouseGate){this.mouseGate=true;setTimeout((()=>{if(this.mouseGate)this.showDropdown()}),500)}};this.renderGroupTitleText=()=>e("ic-typography",{id:"nav-group-title",variant:this.navigationType==="side"?"caption":"label"},this.label);this.renderNavigationItems=()=>{if(this.dropdownOpen||this.inTopNavSideMenu&&!this.expandable){return e("div",{class:{[this.inTopNavSideMenu?"navigation-group-dropdown-side-menu":"navigation-group-dropdown"]:true,selected:this.dropdownOpen&&!this.inTopNavSideMenu},onMouseLeave:!this.inTopNavSideMenu?this.handleMouseLeave:undefined,ref:i=>this.dropdown=i},e("nav",{class:{"navigation-group-dropdown-items":!this.inTopNavSideMenu},"aria-labelledby":"nav-group-title"},e("ul",null,e("slot",null))))}if(this.navigationType!=="top"){return e("ul",{ref:i=>this.linkWrapper=i,class:"grouped-links-wrapper"},e("slot",null))}return null};this.setGroupedLinksElementHeight=i=>{var t;(t=this.linkWrapper)===null||t===void 0?void 0:t.style.setProperty("--navigation-child-items-height",i)}}disconnectedCallback(){var i,t;if(this.navigationType==="side"){(i=this.parentEl)===null||i===void 0?void 0:i.removeEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){(t=this.parentEl)===null||t===void 0?void 0:t.removeEventListener("icTopNavResized",this.topNavResizedHandler)}}componentWillLoad(){var i,t;this.deviceSize=r();const{navType:e,parent:o}=d(this.el);this.navigationType=e;this.parentEl=o;if(this.navigationType==="side"){(i=this.parentEl)===null||i===void 0?void 0:i.addEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){(t=this.parentEl)===null||t===void 0?void 0:t.addEventListener("icTopNavResized",this.topNavResizedHandler);if(this.deviceSize<=this.parentEl.customMobileBreakpoint)this.inTopNavSideMenu=true}}componentDidLoad(){this.allGroupedNavigationItemHeights=`${Array.from(this.el.querySelectorAll(c)).reduce(((i,{offsetHeight:t})=>i+t),0)}px`;setTimeout((()=>{if(!this.linkWrapper||!this.expanded)return;if(!this.isSideNavExpanded)this.collapsedNavItemsHeight=this.allGroupedNavigationItemHeights;else this.expandedNavItemsHeight=this.allGroupedNavigationItemHeights;this.setGroupedLinksElementHeight(this.allGroupedNavigationItemHeights)}),g)}childBlurHandler(){this.hideDropdown()}handleNavigationGroupOpened(i){if(i.detail.source!==this.el){this.hideDropdown()}}navItemClickHandler(){this.hideDropdown()}brandChangeHandler(i){this.focusStyle=i.detail.mode}async setFocus(){var i;(i=this.groupEl)===null||i===void 0?void 0:i.focus()}toggleDropdown(){this.dropdownOpen=!this.dropdownOpen;if(this.inTopNavSideMenu){this.navigationGroupExpanded.emit({expanded:this.dropdownOpen})}}showDropdown(){if(!this.dropdownOpen){this.navigationGroupOpened.emit({source:this.el});this.toggleDropdown()}}hideDropdown(){document.removeEventListener("keydown",this.handleKeydown);if(this.dropdownOpen){this.toggleDropdown()}}render(){const{dropdownOpen:i,expanded:t,inTopNavSideMenu:n,expandable:a,theme:s,isSideNavExpanded:r,focusStyle:d}=this;const p=i=>i?"expanded":"collapsed";const u={"navigation-group":true,[d]:!n,[`navigation-group-side-menu-${p(i)}`]:n&&a,selected:i&&!n};const c=this.navigationType==="side";const g=this.navigationType==="top";const l=!n&&g;const v=c&&t||g&&i;return e(o,{key:"ab11148a5f98eb6fed6ab2378c016cd76377af3f",class:{"in-side-menu":n,"ic-navigation-group-expandable":a,"ic-navigation-group-side-nav":c,[`ic-navigation-group-${p(t)}`]:true,[`ic-theme-${s}`]:s!=="inherit"},role:"listitem"},a||l?e("button",{onMouseEnter:l?this.handleMouseEnter:undefined,onMouseLeave:g?this.handleMouseLeave:undefined,onBlur:this.handleBlur,onClick:this.handleClick,onKeyDown:this.handleKeydown,class:u,ref:i=>this.groupEl=i,"aria-expanded":`${v}`,"aria-haspopup":`${l}`},this.renderGroupTitleText(),c&&a&&e("div",{class:{"chevron-toggle-icon-wrapper":true,"chevron-toggle-icon-closed":!!t},innerHTML:h})):(!c||r)&&e("div",{class:u},this.renderGroupTitleText()),this.renderNavigationItems())}static get delegatesFocus(){return true}get el(){return n(this)}};v.style=u;export{v as ic_navigation_group};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as i,c as t,h as e,H as o,g as n}from"./p-8e4e97b4.js";import{D as a,g as s,f as r,A as d}from"./p-eeb8d98a.js";import{C as h}from"./p-3b185c32.js";import"./p-6215e2ae.js";const p='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;--ic-typography-color:currentcolor}:host(.in-side-menu){border-bottom:var(--ic-border-width) solid\n var(--ic-divider-background-monochrome);padding:var(--ic-space-md) 0}:host .navigation-group{height:100%;width:-moz-fit-content;width:fit-content;color:var(--ic-brand-text-color);display:flex;gap:var(--ic-space-xxs);align-items:center;justify-content:center;padding:0 var(--ic-space-md);transition:var(--ic-easing-transition-slow);position:relative;background:none;border:none;text-align:left;box-sizing:border-box}:host .navigation-group:hover,:host .navigation-group:active,:host .selected{background-color:var(--ic-architectural-20);color:var(--ic-color-text-primary-light);outline:none;cursor:pointer}:host(.in-side-menu) .navigation-group{min-height:2.5rem;width:100%;gap:1.25rem}:host(.in-side-menu) .navigation-group .ic-typography-label{width:100%}:host(.in-side-menu:not(.ic-navigation-group-expandable)) .navigation-group,:host(.in-side-menu) .navigation-group-side-menu-collapsed,:host(.in-side-menu) .navigation-group-side-menu-expanded{color:var(--ic-top-navigation-nav-group-link);justify-content:flex-start;padding:var(--ic-space-xs) var(--ic-space-md)}:host(.in-side-menu) .navigation-group-side-menu-expanded{margin-bottom:var(--ic-space-xs)}:host(.in-side-menu) .navigation-group-side-menu-collapsed::after,:host(.in-side-menu) .navigation-group-side-menu-expanded::after{border-style:solid;border-width:0.125em 0.125em 0 0;content:"";display:inline-block;min-height:0.45em;position:relative;top:-0.1em;transform:rotate(135deg);vertical-align:top;min-width:0.45em}:host(.in-side-menu) .navigation-group-side-menu-expanded::after{top:0.15em;transform:rotate(-45deg)}:host(:not(.in-side-menu)) .navigation-group:focus{box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);outline:var(--ic-hc-focus-outline);z-index:var(--ic-z-index-navigation-item);transition:box-shadow var(--ic-easing-transition-fast)}:host(.in-side-menu) .navigation-group-side-menu-expanded:hover:not(:focus),:host(.in-side-menu) .navigation-group-side-menu-collapsed:hover:not(:focus){background-color:var(--ic-top-navigation-nav-group-hover);cursor:pointer}:host(.in-side-menu) .navigation-group-side-menu-expanded:active:not(:focus),:host(.in-side-menu) .navigation-group-side-menu-collapsed:active:not(:focus){background-color:var(--ic-top-navigation-nav-group-pressed)}:host(.in-side-menu) .navigation-group-side-menu-expanded:focus,:host(.in-side-menu) .navigation-group-side-menu-collapsed:focus{box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);outline:var(--ic-hc-focus-outline);background:none}:host .navigation-group-dropdown{background-color:var(--ic-top-navigation-menu-background);border-bottom:var(--ic-space-1px) solid var(--ic-top-navigation-menu-border);position:absolute;left:0;right:0;padding:var(--ic-space-xs) var(--ic-space-md);box-shadow:0 0.375rem 0.5rem -0.375rem rgba(0 0 0 / 20%);z-index:calc(var(--ic-z-index-navigation-item) - 1)}:host .navigation-group-dropdown-items-list{list-style:none;display:flex;flex-flow:column wrap;align-content:flex-start;padding-left:var(--ic-space-md);max-height:16.5rem}:host .chevron-toggle-icon-wrapper{display:flex;align-items:center}:host .chevron-toggle-icon-wrapper svg{transform:rotate(90deg);height:var(--ic-space-lg);width:var(--ic-space-lg)}:host .chevron-toggle-icon-closed svg{transform:rotate(-90deg)}#nav-group-title{text-wrap:nowrap}:host(.in-side-menu) #nav-group-title{text-wrap:wrap}:host(.ic-navigation-group-side-nav) #nav-group-title{text-wrap:wrap}:host(.ic-navigation-group-expanded) .grouped-links-wrapper{height:var(--navigation-child-items-height, auto) !important;transition:var(--ic-easing-transition-slow);overflow:hidden}:host(.ic-navigation-group-side-nav) .link,:host(.ic-navigation-group-side-nav) ::slotted(a){height:var(--navigation-child-items-height, auto)}:host(.ic-navigation-group-collapsed) .grouped-links-wrapper{height:0;transition:var(--ic-easing-transition-slow);overflow:hidden}:host(.ic-navigation-group-side-nav) .navigation-group{min-height:var(--navigation-group-height);height:-moz-fit-content;height:fit-content;min-width:100%;width:var(--navigation-group-width, auto);justify-content:var(--navigation-group-justify-content);padding:var(--ic-space-md) var(--navigation-group-expand-toggle-padding)\n var(--ic-space-xs) var(--ic-space-md)}:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable)) .navigation-group{padding-right:var(--ic-space-md)}:host(.ic-navigation-group-side-nav) .navigation-group:hover,:host(.ic-navigation-group-side-nav) .navigation-group:active,:host(.ic-navigation-group-side-nav) .selected{background-color:var(--navigation-group-hover);color:var(--navigation-group-text-hover)}:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable)) .navigation-group:hover,:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable)) .navigation-group:active,:host(.in-side-menu:not(.ic-navigation-group-expandable)) .navigation-group:hover,:host(.in-side-menu:not(.ic-navigation-group-expandable)) .navigation-group:active{background:none;cursor:auto}:host(.ic-navigation-group-side-nav) .navigation-group:focus{box-shadow:var(--ic-border-focus-inset);border-radius:var(--ic-border-radius-inset);background:none}:host(.ic-navigation-group-side-nav) .ic-typography-caption{position:var(--navigation-group-title-position);left:var(--navigation-group-title-position-left)}@media (prefers-reduced-motion: reduce){:host .navigation-group,:host(:not(.in-side-menu)) .navigation-group:focus,:host(.ic-navigation-group-expanded) .grouped-links-wrapper,:host(.ic-navigation-group-collapsed) .grouped-links-wrapper{transition:none}}';const c=p;const u="ic-navigation-item";const g=100;const l="IC-NAVIGATION-GROUP";const v=class{constructor(o){i(this,o);this.navigationGroupOpened=t(this,"navigationGroupOpened",7);this.navigationGroupExpanded=t(this,"navigationGroupExpanded",7);this.allGroupedNavigationItemHeights="";this.collapsedNavItemsHeight=null;this.expandedNavItemsHeight=null;this.mouseGate=false;this.deviceSize=a.XL;this.dropdownOpen=false;this.focusStyle=s();this.inTopNavSideMenu=false;this.isSideNavExpanded=false;this.expandable=false;this.expanded=true;this.theme="inherit";this.getGroupedNavigationItemsHeight=()=>`${Array.from(this.el.querySelectorAll(u)).reduce(((i,{offsetHeight:t})=>i+t),0)}px`;this.sideNavExpandHandler=i=>{this.isSideNavExpanded=i.detail.sideNavExpanded;if(!this.linkWrapper||!this.expanded)return;const t=this.isSideNavExpanded?this.expandedNavItemsHeight:this.collapsedNavItemsHeight;if(t){this.setGroupedLinksElementHeight(t)}else{setTimeout((()=>{const i=this.getGroupedNavigationItemsHeight();this.allGroupedNavigationItemHeights=i;if(this.isSideNavExpanded){this.expandedNavItemsHeight=i}else{this.collapsedNavItemsHeight=i}this.setGroupedLinksElementHeight(i)}),g)}};this.topNavResizedHandler=({detail:{size:i}})=>{var t;if(i===this.deviceSize)return;this.deviceSize=i;this.inTopNavSideMenu=i<=(((t=this.parentEl)===null||t===void 0?void 0:t.customMobileBreakpoint)||a.L)};this.toggleExpanded=()=>{this.expanded=!this.expanded;if(!this.linkWrapper)return;this.setGroupedLinksElementHeight(!this.expanded?"0":this.isSideNavExpanded?this.expandedNavItemsHeight:this.collapsedNavItemsHeight);this.el.querySelectorAll(u).forEach((i=>{var t;const e=((t=i.shadowRoot)===null||t===void 0?void 0:t.querySelector("a"))||i.querySelector("a");e===null||e===void 0?void 0:e.setAttribute("tabindex",this.expanded?"0":"-1")}))};this.handleClick=i=>{if(this.navigationType==="top"&&i.detail){this.toggleDropdown()}else{this.toggleExpanded()}};this.handleBlur=i=>{if(!this.el.contains(i.relatedTarget)){this.hideDropdown()}};this.handleKeydown=i=>{const{key:t}=i;if(t!=="Enter"&&t!==" "&&t!=="Escape")return;switch(this.navigationType){case"top":if(t===" "||t==="Enter"){this.toggleDropdown()}else if(!this.inTopNavSideMenu){this.hideDropdown()}break;case"side":this.toggleExpanded();i.preventDefault();break;default:this.toggleExpanded();break}};this.handleMouseLeave=i=>{const t=i.relatedTarget;this.mouseGate=false;if(this.el.contains(t)||t===this.dropdown||this.el.contains(document.activeElement))return;if(document.activeElement!==this.el&&(t===null||t===void 0?void 0:t.nodeName)===l&&this.dropdownOpen){this.mouseGate=true;this.hideDropdown()}else{this.mouseGate=false;setTimeout((()=>{this.dropdownOpen?this.hideDropdown():null}),500)}};this.handleMouseEnter=i=>{const t=i.relatedTarget;document.addEventListener("keydown",this.handleKeydown);if((t===null||t===void 0?void 0:t.nodeName)===l&&this.mouseGate){this.showDropdown()}else if(!this.dropdownOpen&&!this.mouseGate){this.mouseGate=true;setTimeout((()=>{if(this.mouseGate)this.showDropdown()}),500)}};this.renderGroupTitleText=()=>e("ic-typography",{id:"nav-group-title",variant:this.navigationType==="side"?"caption":"label"},this.label);this.renderNavigationItems=()=>{if(this.dropdownOpen||this.inTopNavSideMenu&&!this.expandable){return e("div",{class:{[this.inTopNavSideMenu?"navigation-group-dropdown-side-menu":"navigation-group-dropdown"]:true,selected:this.dropdownOpen&&!this.inTopNavSideMenu},onMouseLeave:!this.inTopNavSideMenu?this.handleMouseLeave:undefined,ref:i=>this.dropdown=i},e("nav",{class:{"navigation-group-dropdown-items":!this.inTopNavSideMenu},"aria-labelledby":"nav-group-title"},e("ul",null,e("slot",null))))}if(this.navigationType!=="top"){return e("ul",{ref:i=>this.linkWrapper=i,class:"grouped-links-wrapper"},e("slot",null))}return null};this.setGroupedLinksElementHeight=i=>{var t;(t=this.linkWrapper)===null||t===void 0?void 0:t.style.setProperty("--navigation-child-items-height",i)}}disconnectedCallback(){var i,t;if(this.navigationType==="side"){(i=this.parentEl)===null||i===void 0?void 0:i.removeEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){(t=this.parentEl)===null||t===void 0?void 0:t.removeEventListener("icTopNavResized",this.topNavResizedHandler)}}componentWillLoad(){var i,t;this.deviceSize=r();const{navType:e,parent:o}=d(this.el);this.navigationType=e;this.parentEl=o;if(this.navigationType==="side"){(i=this.parentEl)===null||i===void 0?void 0:i.addEventListener("icSideNavExpanded",this.sideNavExpandHandler)}else if(this.navigationType==="top"){(t=this.parentEl)===null||t===void 0?void 0:t.addEventListener("icTopNavResized",this.topNavResizedHandler);if(this.deviceSize<=this.parentEl.customMobileBreakpoint)this.inTopNavSideMenu=true}}componentDidLoad(){setTimeout((()=>{if(!this.linkWrapper||!this.expanded)return;this.allGroupedNavigationItemHeights=this.getGroupedNavigationItemsHeight();if(!this.isSideNavExpanded)this.collapsedNavItemsHeight=this.allGroupedNavigationItemHeights;else this.expandedNavItemsHeight=this.allGroupedNavigationItemHeights;this.setGroupedLinksElementHeight(this.allGroupedNavigationItemHeights)}),g)}childBlurHandler(){this.hideDropdown()}handleNavigationGroupOpened(i){if(i.detail.source!==this.el){this.hideDropdown()}}navItemClickHandler(){this.hideDropdown()}brandChangeHandler(i){this.focusStyle=i.detail.mode}async setFocus(){var i;(i=this.groupEl)===null||i===void 0?void 0:i.focus()}toggleDropdown(){this.dropdownOpen=!this.dropdownOpen;if(this.inTopNavSideMenu){this.navigationGroupExpanded.emit({expanded:this.dropdownOpen})}}showDropdown(){if(!this.dropdownOpen){this.navigationGroupOpened.emit({source:this.el});this.toggleDropdown()}}hideDropdown(){document.removeEventListener("keydown",this.handleKeydown);if(this.dropdownOpen){this.toggleDropdown()}}render(){const{dropdownOpen:i,expanded:t,inTopNavSideMenu:n,expandable:a,theme:s,isSideNavExpanded:r,focusStyle:d}=this;const p=i=>i?"expanded":"collapsed";const c={"navigation-group":true,[d]:!n,[`navigation-group-side-menu-${p(i)}`]:n&&a,selected:i&&!n};const u=this.navigationType==="side";const g=this.navigationType==="top";const l=!n&&g;const v=u&&t||g&&i;return e(o,{key:"7ebbc34bc82ba009930a18d58c6747ebd7707e27",class:{"in-side-menu":n,"ic-navigation-group-expandable":a,"ic-navigation-group-side-nav":u,[`ic-navigation-group-${p(t)}`]:true,[`ic-theme-${s}`]:s!=="inherit"},role:"listitem"},a||l?e("button",{onMouseEnter:l?this.handleMouseEnter:undefined,onMouseLeave:g?this.handleMouseLeave:undefined,onBlur:this.handleBlur,onClick:this.handleClick,onKeyDown:this.handleKeydown,class:c,ref:i=>this.groupEl=i,"aria-expanded":`${v}`,"aria-haspopup":`${l}`},this.renderGroupTitleText(),u&&a&&e("div",{class:{"chevron-toggle-icon-wrapper":true,"chevron-toggle-icon-closed":!!t},innerHTML:h})):(!u||r)&&e("div",{class:c},this.renderGroupTitleText()),this.renderNavigationItems())}static get delegatesFocus(){return true}get el(){return n(this)}};v.style=c;export{v as ic_navigation_group};
|
|
2
|
+
//# sourceMappingURL=p-95849ac2.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["icNavigationGroupCss","IcNavigationGroupStyle0","IC_NAVIGATION_ITEM","DYNAMIC_GROUPED_LINKS_HEIGHT_MS","NODE_NAME","NavigationGroup","constructor","hostRef","this","allGroupedNavigationItemHeights","collapsedNavItemsHeight","expandedNavItemsHeight","mouseGate","deviceSize","DEVICE_SIZES","XL","dropdownOpen","focusStyle","getBrandForegroundAppearance","inTopNavSideMenu","isSideNavExpanded","expandable","expanded","theme","getGroupedNavigationItemsHeight","Array","from","el","querySelectorAll","reduce","childrenHeights","offsetHeight","sideNavExpandHandler","event","detail","sideNavExpanded","linkWrapper","navItemsHeight","setGroupedLinksElementHeight","setTimeout","currentHeight","topNavResizedHandler","size","_a","parentEl","customMobileBreakpoint","L","toggleExpanded","forEach","navigationItem","navItem","shadowRoot","querySelector","setAttribute","handleClick","ev","navigationType","toggleDropdown","handleBlur","contains","relatedTarget","hideDropdown","handleKeydown","key","preventDefault","handleMouseLeave","relTarget","dropdown","document","activeElement","nodeName","handleMouseEnter","addEventListener","showDropdown","renderGroupTitleText","h","id","variant","label","renderNavigationItems","class","selected","onMouseLeave","undefined","ref","height","style","setProperty","disconnectedCallback","removeEventListener","_b","componentWillLoad","getCurrentDeviceSize","navType","parent","getNavItemParentDetails","componentDidLoad","childBlurHandler","handleNavigationGroupOpened","source","navItemClickHandler","brandChangeHandler","mode","setFocus","groupEl","focus","navigationGroupExpanded","emit","navigationGroupOpened","render","getExpandedClassSuffix","prop","navGroupTitleClassNames","isSideNav","isTopNav","isTopNavDesktop","ariaExpanded","Host","role","onMouseEnter","onBlur","onClick","onKeyDown","innerHTML","chevronIcon"],"sources":["src/components/ic-navigation-group/ic-navigation-group.css?tag=ic-navigation-group&encapsulation=shadow","src/components/ic-navigation-group/ic-navigation-group.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --ic-z-index-navigation-item: z-index of navigation group item\n */\n\n:host {\n display: block;\n\n --ic-typography-color: currentcolor;\n}\n\n:host(.in-side-menu) {\n border-bottom: var(--ic-border-width) solid\n var(--ic-divider-background-monochrome);\n padding: var(--ic-space-md) 0;\n}\n\n:host .navigation-group {\n height: 100%;\n width: fit-content;\n color: var(--ic-brand-text-color);\n display: flex;\n gap: var(--ic-space-xxs);\n align-items: center;\n justify-content: center;\n padding: 0 var(--ic-space-md);\n transition: var(--ic-easing-transition-slow);\n position: relative;\n background: none;\n border: none;\n text-align: left;\n box-sizing: border-box;\n}\n\n:host .navigation-group:hover,\n:host .navigation-group:active,\n:host .selected {\n background-color: var(--ic-architectural-20);\n color: var(--ic-color-text-primary-light);\n outline: none;\n cursor: pointer;\n}\n\n:host(.in-side-menu) .navigation-group {\n min-height: 2.5rem;\n width: 100%;\n gap: 1.25rem;\n}\n\n:host(.in-side-menu) .navigation-group .ic-typography-label {\n width: 100%;\n}\n\n:host(.in-side-menu:not(.ic-navigation-group-expandable)) .navigation-group,\n:host(.in-side-menu) .navigation-group-side-menu-collapsed,\n:host(.in-side-menu) .navigation-group-side-menu-expanded {\n color: var(--ic-top-navigation-nav-group-link);\n justify-content: flex-start;\n padding: var(--ic-space-xs) var(--ic-space-md);\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-expanded {\n margin-bottom: var(--ic-space-xs);\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-collapsed::after,\n:host(.in-side-menu) .navigation-group-side-menu-expanded::after {\n border-style: solid;\n border-width: 0.125em 0.125em 0 0;\n content: \"\";\n display: inline-block;\n min-height: 0.45em;\n position: relative;\n top: -0.1em;\n transform: rotate(135deg);\n vertical-align: top;\n min-width: 0.45em;\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-expanded::after {\n top: 0.15em;\n transform: rotate(-45deg);\n}\n\n:host(:not(.in-side-menu)) .navigation-group:focus {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n outline: var(--ic-hc-focus-outline);\n z-index: var(--ic-z-index-navigation-item);\n transition: box-shadow var(--ic-easing-transition-fast);\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-expanded:hover:not(:focus),\n:host(.in-side-menu) .navigation-group-side-menu-collapsed:hover:not(:focus) {\n background-color: var(--ic-top-navigation-nav-group-hover);\n cursor: pointer;\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-expanded:active:not(:focus),\n:host(.in-side-menu) .navigation-group-side-menu-collapsed:active:not(:focus) {\n background-color: var(--ic-top-navigation-nav-group-pressed);\n}\n\n:host(.in-side-menu) .navigation-group-side-menu-expanded:focus,\n:host(.in-side-menu) .navigation-group-side-menu-collapsed:focus {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n outline: var(--ic-hc-focus-outline);\n background: none;\n}\n\n:host .navigation-group-dropdown {\n background-color: var(--ic-top-navigation-menu-background);\n border-bottom: var(--ic-space-1px) solid var(--ic-top-navigation-menu-border);\n position: absolute;\n left: 0;\n right: 0;\n padding: var(--ic-space-xs) var(--ic-space-md);\n box-shadow: 0 0.375rem 0.5rem -0.375rem rgba(0 0 0 / 20%);\n z-index: calc(var(--ic-z-index-navigation-item) - 1);\n}\n\n:host .navigation-group-dropdown-items-list {\n list-style: none;\n display: flex;\n flex-flow: column wrap;\n align-content: flex-start;\n padding-left: var(--ic-space-md);\n max-height: 16.5rem;\n}\n\n:host .chevron-toggle-icon-wrapper {\n display: flex;\n align-items: center;\n}\n\n:host .chevron-toggle-icon-wrapper svg {\n transform: rotate(90deg);\n height: var(--ic-space-lg);\n width: var(--ic-space-lg);\n}\n\n:host .chevron-toggle-icon-closed svg {\n transform: rotate(-90deg);\n}\n\n#nav-group-title {\n text-wrap: nowrap;\n}\n\n:host(.in-side-menu) #nav-group-title {\n text-wrap: wrap;\n}\n\n:host(.ic-navigation-group-side-nav) #nav-group-title {\n text-wrap: wrap;\n}\n\n:host(.ic-navigation-group-expanded) .grouped-links-wrapper {\n height: var(--navigation-child-items-height, auto) !important;\n transition: var(--ic-easing-transition-slow);\n overflow: hidden;\n}\n\n:host(.ic-navigation-group-side-nav) .link,\n:host(.ic-navigation-group-side-nav) ::slotted(a) {\n height: var(--navigation-child-items-height, auto);\n}\n\n:host(.ic-navigation-group-collapsed) .grouped-links-wrapper {\n height: 0;\n transition: var(--ic-easing-transition-slow);\n overflow: hidden;\n}\n\n:host(.ic-navigation-group-side-nav) .navigation-group {\n min-height: var(--navigation-group-height);\n height: fit-content;\n min-width: 100%;\n width: var(--navigation-group-width, auto);\n justify-content: var(--navigation-group-justify-content);\n padding: var(--ic-space-md) var(--navigation-group-expand-toggle-padding)\n var(--ic-space-xs) var(--ic-space-md);\n}\n\n:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable))\n .navigation-group {\n padding-right: var(--ic-space-md);\n}\n\n:host(.ic-navigation-group-side-nav) .navigation-group:hover,\n:host(.ic-navigation-group-side-nav) .navigation-group:active,\n:host(.ic-navigation-group-side-nav) .selected {\n background-color: var(--navigation-group-hover);\n color: var(--navigation-group-text-hover);\n}\n\n:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable))\n .navigation-group:hover,\n:host(.ic-navigation-group-side-nav:not(.ic-navigation-group-expandable))\n .navigation-group:active,\n:host(.in-side-menu:not(.ic-navigation-group-expandable))\n .navigation-group:hover,\n:host(.in-side-menu:not(.ic-navigation-group-expandable))\n .navigation-group:active {\n background: none;\n cursor: auto;\n}\n\n:host(.ic-navigation-group-side-nav) .navigation-group:focus {\n box-shadow: var(--ic-border-focus-inset);\n border-radius: var(--ic-border-radius-inset);\n background: none;\n}\n\n:host(.ic-navigation-group-side-nav) .ic-typography-caption {\n position: var(--navigation-group-title-position);\n left: var(--navigation-group-title-position-left);\n}\n\n@media (prefers-reduced-motion: reduce) {\n :host .navigation-group,\n :host(:not(.in-side-menu)) .navigation-group:focus,\n :host(.ic-navigation-group-expanded) .grouped-links-wrapper,\n :host(.ic-navigation-group-collapsed) .grouped-links-wrapper {\n transition: none;\n }\n}\n","import {\n Component,\n Element,\n Host,\n Prop,\n State,\n Listen,\n h,\n Method,\n Event,\n EventEmitter,\n} from \"@stencil/core\";\n\nimport {\n DEVICE_SIZES,\n getCurrentDeviceSize,\n getBrandForegroundAppearance,\n getNavItemParentDetails,\n} from \"../../utils/helpers\";\nimport {\n IcNavType,\n IcBrand,\n IcBrandForeground,\n IcBrandForegroundNoDefault,\n IcThemeMode,\n} from \"../../utils/types\";\n\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\nimport {\n IcNavigationExpandEventDetail,\n IcNavigationOpenEventDetail,\n} from \"./ic-navigation-group.types\";\n\nconst IC_NAVIGATION_ITEM = \"ic-navigation-item\";\nconst DYNAMIC_GROUPED_LINKS_HEIGHT_MS = 100;\nconst NODE_NAME = \"IC-NAVIGATION-GROUP\";\n\n@Component({\n tag: \"ic-navigation-group\",\n styleUrl: \"ic-navigation-group.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class NavigationGroup {\n private allGroupedNavigationItemHeights = \"\";\n private collapsedNavItemsHeight: string | null = null;\n private dropdown?: HTMLElement;\n private expandedNavItemsHeight: string | null = null;\n private groupEl?: HTMLElement;\n private mouseGate = false;\n private linkWrapper?: HTMLUListElement;\n\n @Element() el: HTMLIcNavigationGroupElement;\n\n @State() deviceSize: number = DEVICE_SIZES.XL;\n @State() dropdownOpen = false;\n @State() focusStyle: IcBrandForegroundNoDefault | IcBrandForeground =\n getBrandForegroundAppearance();\n @State() inTopNavSideMenu = false;\n @State() navigationType: IcNavType | \"\";\n @State() parentEl: HTMLElement | null;\n @State() isSideNavExpanded = false;\n\n /**\n * If `true`, the group will be expandable when in an ic-side-navigation component, or, when in an ic-top-navigation component, in the side menu displayed at small screen sizes.\n */\n @Prop() expandable = false;\n\n /**\n * If `true`, the expandable group will be expanded by default when in an ic-side-navigation component. To enable this prop, `expandable` must also be set to `true`.\n */\n @Prop({ mutable: true }) expanded = true;\n\n /**\n * The label to display on the group.\n */\n @Prop() label!: string;\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme: IcThemeMode = \"inherit\";\n\n /**\n * @internal Emitted when a navigation group is opened - when within an ic-top-navigation at large screen sizes.\n */\n @Event() navigationGroupOpened: EventEmitter<IcNavigationOpenEventDetail>;\n\n /**\n * @internal Emitted when a navigation group is expanded - when within an ic-top-navigation at small screen sizes.\n */\n @Event() navigationGroupExpanded: EventEmitter<IcNavigationExpandEventDetail>;\n\n disconnectedCallback(): void {\n if (this.navigationType === \"side\") {\n this.parentEl?.removeEventListener(\n \"icSideNavExpanded\",\n this.sideNavExpandHandler as EventListener\n );\n } else if (this.navigationType === \"top\") {\n this.parentEl?.removeEventListener(\n \"icTopNavResized\",\n this.topNavResizedHandler as EventListener\n );\n }\n }\n\n componentWillLoad(): void {\n this.deviceSize = getCurrentDeviceSize();\n const { navType, parent } = getNavItemParentDetails(this.el);\n this.navigationType = navType;\n this.parentEl = parent;\n\n if (this.navigationType === \"side\") {\n this.parentEl?.addEventListener(\n \"icSideNavExpanded\",\n this.sideNavExpandHandler as EventListener\n );\n } else if (this.navigationType === \"top\") {\n this.parentEl?.addEventListener(\n \"icTopNavResized\",\n this.topNavResizedHandler as EventListener\n );\n if (\n this.deviceSize <=\n (this.parentEl as HTMLIcTopNavigationElement).customMobileBreakpoint\n )\n this.inTopNavSideMenu = true;\n }\n }\n\n private getGroupedNavigationItemsHeight = (): string =>\n `${Array.from(this.el.querySelectorAll(IC_NAVIGATION_ITEM)).reduce(\n (childrenHeights, { offsetHeight }) => childrenHeights + offsetHeight,\n 0\n )}px`;\n\n componentDidLoad(): void {\n /**\n * debounce is required as the incorrect height was retrieved instantly after\n * componentDidLoad is invoked.\n */\n setTimeout(() => {\n if (!this.linkWrapper || !this.expanded) return;\n\n this.allGroupedNavigationItemHeights =\n this.getGroupedNavigationItemsHeight();\n\n if (!this.isSideNavExpanded)\n this.collapsedNavItemsHeight = this.allGroupedNavigationItemHeights;\n else this.expandedNavItemsHeight = this.allGroupedNavigationItemHeights;\n\n this.setGroupedLinksElementHeight(this.allGroupedNavigationItemHeights);\n }, DYNAMIC_GROUPED_LINKS_HEIGHT_MS);\n }\n\n @Listen(\"childBlur\")\n childBlurHandler(): void {\n this.hideDropdown();\n }\n\n @Listen(\"navigationGroupOpened\", { target: \"document\" })\n handleNavigationGroupOpened(event: CustomEvent): void {\n if (event.detail.source !== this.el) {\n this.hideDropdown();\n }\n }\n\n @Listen(\"navItemClicked\")\n navItemClickHandler(): void {\n this.hideDropdown();\n }\n\n @Listen(\"brandChange\", { target: \"document\" })\n brandChangeHandler(ev: CustomEvent<IcBrand>): void {\n this.focusStyle = ev.detail.mode;\n }\n\n /**\n * Sets focus on the nav item.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.groupEl?.focus();\n }\n\n private sideNavExpandHandler = (event: CustomEvent) => {\n this.isSideNavExpanded = event.detail.sideNavExpanded;\n\n if (!this.linkWrapper || !this.expanded) return;\n\n const navItemsHeight = this.isSideNavExpanded\n ? this.expandedNavItemsHeight\n : this.collapsedNavItemsHeight;\n\n if (navItemsHeight) {\n this.setGroupedLinksElementHeight(navItemsHeight);\n } else {\n setTimeout(() => {\n const currentHeight = this.getGroupedNavigationItemsHeight();\n this.allGroupedNavigationItemHeights = currentHeight;\n\n if (this.isSideNavExpanded) {\n this.expandedNavItemsHeight = currentHeight;\n } else {\n this.collapsedNavItemsHeight = currentHeight;\n }\n\n this.setGroupedLinksElementHeight(currentHeight);\n }, DYNAMIC_GROUPED_LINKS_HEIGHT_MS);\n }\n };\n\n private topNavResizedHandler = ({\n detail: { size },\n }: CustomEvent<{ size: number }>) => {\n if (size === this.deviceSize) return;\n\n this.deviceSize = size;\n this.inTopNavSideMenu =\n size <=\n ((this.parentEl as HTMLIcTopNavigationElement)?.customMobileBreakpoint ||\n DEVICE_SIZES.L);\n };\n\n private toggleDropdown() {\n this.dropdownOpen = !this.dropdownOpen;\n if (this.inTopNavSideMenu) {\n this.navigationGroupExpanded.emit({ expanded: this.dropdownOpen });\n }\n }\n\n private toggleExpanded = () => {\n this.expanded = !this.expanded;\n if (!this.linkWrapper) return;\n\n this.setGroupedLinksElementHeight(\n !this.expanded\n ? \"0\"\n : this.isSideNavExpanded\n ? this.expandedNavItemsHeight\n : this.collapsedNavItemsHeight\n );\n\n this.el.querySelectorAll(IC_NAVIGATION_ITEM).forEach((navigationItem) => {\n const navItem =\n navigationItem.shadowRoot?.querySelector(\"a\") ||\n navigationItem.querySelector(\"a\");\n navItem?.setAttribute(\"tabindex\", this.expanded ? \"0\" : \"-1\");\n });\n };\n\n private showDropdown() {\n if (!this.dropdownOpen) {\n this.navigationGroupOpened.emit({\n source: this.el,\n });\n\n this.toggleDropdown();\n }\n }\n\n private hideDropdown() {\n document.removeEventListener(\"keydown\", this.handleKeydown);\n if (this.dropdownOpen) {\n this.toggleDropdown();\n }\n }\n\n private handleClick = (ev: MouseEvent) => {\n if (this.navigationType === \"top\" && ev.detail) {\n this.toggleDropdown();\n } else {\n this.toggleExpanded();\n }\n };\n\n private handleBlur = (ev: FocusEvent) => {\n if (!this.el.contains(ev.relatedTarget as HTMLElement)) {\n this.hideDropdown();\n }\n };\n\n private handleKeydown = (ev: KeyboardEvent) => {\n const { key } = ev;\n if (key !== \"Enter\" && key !== \" \" && key !== \"Escape\") return;\n\n switch (this.navigationType) {\n case \"top\":\n if (key === \" \" || key === \"Enter\") {\n this.toggleDropdown();\n } else if (!this.inTopNavSideMenu) {\n this.hideDropdown();\n }\n break;\n case \"side\":\n this.toggleExpanded();\n ev.preventDefault();\n break;\n default:\n this.toggleExpanded();\n break;\n }\n };\n\n private handleMouseLeave = (ev: MouseEvent) => {\n const relTarget = ev.relatedTarget as HTMLElement;\n\n this.mouseGate = false;\n\n if (\n this.el.contains(relTarget) ||\n relTarget === this.dropdown ||\n this.el.contains(document.activeElement)\n )\n return;\n\n if (\n document.activeElement !== this.el &&\n relTarget?.nodeName === NODE_NAME &&\n this.dropdownOpen\n ) {\n this.mouseGate = true;\n this.hideDropdown();\n } else {\n this.mouseGate = false;\n setTimeout(() => {\n this.dropdownOpen ? this.hideDropdown() : null;\n }, 500);\n }\n };\n\n private handleMouseEnter = (ev: MouseEvent) => {\n const relTarget = ev.relatedTarget as HTMLElement | null;\n document.addEventListener(\"keydown\", this.handleKeydown);\n\n if (relTarget?.nodeName === NODE_NAME && this.mouseGate) {\n this.showDropdown();\n } else if (!this.dropdownOpen && !this.mouseGate) {\n this.mouseGate = true;\n setTimeout(() => {\n if (this.mouseGate) this.showDropdown();\n }, 500);\n }\n };\n\n private renderGroupTitleText = () => (\n <ic-typography\n id=\"nav-group-title\"\n variant={this.navigationType === \"side\" ? \"caption\" : \"label\"}\n >\n {this.label}\n </ic-typography>\n );\n\n private renderNavigationItems = () => {\n if (this.dropdownOpen || (this.inTopNavSideMenu && !this.expandable)) {\n return (\n <div\n class={{\n [this.inTopNavSideMenu\n ? \"navigation-group-dropdown-side-menu\"\n : \"navigation-group-dropdown\"]: true,\n selected: this.dropdownOpen && !this.inTopNavSideMenu,\n }}\n onMouseLeave={\n !this.inTopNavSideMenu ? this.handleMouseLeave : undefined\n }\n ref={(el) => (this.dropdown = el)}\n >\n <nav\n class={{\n \"navigation-group-dropdown-items\": !this.inTopNavSideMenu,\n }}\n aria-labelledby=\"nav-group-title\"\n >\n <ul>\n <slot></slot>\n </ul>\n </nav>\n </div>\n );\n }\n\n if (this.navigationType !== \"top\") {\n return (\n <ul ref={(el) => (this.linkWrapper = el)} class=\"grouped-links-wrapper\">\n <slot></slot>\n </ul>\n );\n }\n\n return null;\n };\n\n private setGroupedLinksElementHeight = (height: string | null) => {\n this.linkWrapper?.style.setProperty(\n \"--navigation-child-items-height\",\n height\n );\n };\n\n render() {\n const {\n dropdownOpen,\n expanded,\n inTopNavSideMenu,\n expandable,\n theme,\n isSideNavExpanded,\n focusStyle,\n } = this;\n\n const getExpandedClassSuffix = (prop: boolean) =>\n prop ? \"expanded\" : \"collapsed\";\n\n const navGroupTitleClassNames = {\n \"navigation-group\": true,\n [focusStyle]: !inTopNavSideMenu,\n [`navigation-group-side-menu-${getExpandedClassSuffix(dropdownOpen)}`]:\n inTopNavSideMenu && expandable,\n selected: dropdownOpen && !inTopNavSideMenu,\n };\n\n const isSideNav = this.navigationType === \"side\";\n const isTopNav = this.navigationType === \"top\";\n const isTopNavDesktop = !inTopNavSideMenu && isTopNav;\n\n const ariaExpanded = (isSideNav && expanded) || (isTopNav && dropdownOpen);\n\n return (\n <Host\n class={{\n \"in-side-menu\": inTopNavSideMenu,\n \"ic-navigation-group-expandable\": expandable,\n \"ic-navigation-group-side-nav\": isSideNav,\n [`ic-navigation-group-${getExpandedClassSuffix(expanded)}`]: true,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n role=\"listitem\"\n >\n {expandable || isTopNavDesktop ? (\n <button\n onMouseEnter={isTopNavDesktop ? this.handleMouseEnter : undefined}\n onMouseLeave={isTopNav ? this.handleMouseLeave : undefined}\n onBlur={this.handleBlur}\n onClick={this.handleClick}\n onKeyDown={this.handleKeydown}\n class={navGroupTitleClassNames}\n ref={(el) => (this.groupEl = el)}\n aria-expanded={`${ariaExpanded}`}\n aria-haspopup={`${isTopNavDesktop}`}\n >\n {this.renderGroupTitleText()}\n {isSideNav && expandable && (\n <div\n class={{\n \"chevron-toggle-icon-wrapper\": true,\n \"chevron-toggle-icon-closed\": !!expanded,\n }}\n innerHTML={chevronIcon}\n ></div>\n )}\n </button>\n ) : (\n (!isSideNav || isSideNavExpanded) && (\n <div class={navGroupTitleClassNames}>\n {this.renderGroupTitleText()}\n </div>\n )\n )}\n {this.renderNavigationItems()}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e,c as t,h as i,H as o,g as n}from"./p-8e4e97b4.js";import{r as a,i as
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as e,c as t,h as i,H as o,g as n}from"./p-8e4e97b4.js";import{r as a,i as r}from"./p-eeb8d98a.js";import{C as s}from"./p-3b185c32.js";import"./p-6215e2ae.js";const c='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{display:block;border-bottom:var(--ic-space-1px) solid var(--ic-accordion-divider)}:host .expand-chevron{color:var(--ic-accordion-chevron)}:host(.ic-accordion-disabled) .expand-chevron{color:var(--ic-accordion-chevron-disabled)}.section-button.small{padding:var(--ic-space-xxs) var(--ic-space-xs)}.section-button.large{padding:var(--ic-space-sm) var(--ic-space-xs)}:host(:first-of-type){border-top:var(--ic-space-1px) solid var(--ic-accordion-divider)}:focus{outline:none}.section-button{background-color:transparent;display:flex;align-items:center;width:100%;padding:var(--ic-space-xs);font-weight:var(--ic-font-weight-bold);border:none}.section-header{--ic-typography-color:var(--ic-accordion-heading-text);color:var(--ic-accordion-heading-text);text-align:left;flex:1 0}:host(.ic-accordion-disabled) .section-header{--ic-typography-color:var(--ic-accordion-heading-text-disabled);color:var(--ic-accordion-heading-text-disabled)}button:hover{background-color:var(--ic-accordion-background-hover);cursor:pointer}button:active{background-color:var(--ic-accordion-background-pressed)}button:focus{box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);transition:var(--ic-transition-duration-fast)}button:disabled{pointer-events:none}.icon-container{margin:0 var(--ic-space-xs) 0 0;display:flex;align-items:center;width:var(--ic-space-lg);height:var(--ic-space-lg);color:var(--ic-accordion-icon)}:host(.ic-accordion-disabled) .icon-container{color:var(--ic-accordion-icon-disabled)}::slotted(svg){width:var(--ic-space-md);height:var(--ic-space-md)}.expand-chevron{width:var(--ic-space-lg);height:var(--ic-space-lg);margin-left:calc(var(--ic-space-xl) + var(--ic-space-xs));transform:rotate(90deg);justify-self:end}.content-expanded-chevron{transform:rotate(-90deg)}.expanded-content{--ic-typography-color:var(--ic-accordion-body-text);color:var(--ic-accordion-body-text);height:0;overflow:hidden;display:flex;flex-direction:column;visibility:var(--ic-expanded-content-visibility, hidden)}.expanded-content-inner{padding:var(--ic-space-xs)}.expanded-content-opened{overflow:visible}@media (forced-colors: active){button:focus{border:var(--ic-border-hc) !important}}@media (prefers-reduced-motion: reduce){button:focus{transition:none}}';const d=c;let l=0;const h="expanded-content-opened";const b=class{constructor(i){e(this,i);this.accordionClicked=t(this,"accordionClicked",7);this.accordionId=`ic-accordion-${l++}`;this.CONTENT_VISIBILITY_PROPERTY="--ic-expanded-content-visibility";this.disabled=false;this.expanded=false;this.heading="";this.message="";this.size="medium";this.theme="inherit";this.toggleExpanded=()=>{this.expanded=!this.expanded;this.accordionClicked.emit({id:this.accordionId})};this.setAccordionAnimation=(e,t,i,o)=>{e.style.transitionDuration=`${t}ms`;e.style.transitionProperty=i;e.style.transitionTimingFunction=o};this.setExpandedContentStyle=(e,t)=>{if(e.propertyName==="height"&&t.clientHeight>0){t.classList.add(h);t.style.height="auto"}};this.hideExpandedContent=(e,t)=>{if(e.propertyName==="height"&&t.clientHeight===0){t.style.setProperty(this.CONTENT_VISIBILITY_PROPERTY,"hidden")}};this.animateExpandedContent=()=>{const e=this.expandedContentEl;if(!e)return;const t=window.matchMedia("(prefers-reduced-motion: reduce)").matches;if(this.expanded){this.expandContent(e,t);return}this.collapseContent(e,t)};this.expandContent=(e,t)=>{const i=e.scrollHeight;if(i<=0)return;e.style.setProperty(this.CONTENT_VISIBILITY_PROPERTY,"visible");if(t){e.classList.add(h);e.style.height="auto";return}e.style.height=`${i}px`;this.setAccordionAnimation(e,"300","height","ease-out");e.addEventListener("transitionend",(t=>{this.setExpandedContentStyle(t,e)}),{once:true})};this.collapseContent=(e,t)=>{const i=e.scrollHeight;if(i<=0)return;e.style.height=`${i}px`;if(t){e.style.height="0";e.classList.remove(h);e.style.setProperty(this.CONTENT_VISIBILITY_PROPERTY,"hidden");return}requestAnimationFrame((()=>{e.style.height="0"}));this.setAccordionAnimation(e,"300","height","ease-in");e.classList.remove(h);e.addEventListener("transitionend",(t=>{this.hideExpandedContent(t,e)}),{once:true})}}watchDisabledHandler(){a(this.disabled,this.el)}handleExpandedWatch(){this.animateExpandedContent()}async setFocus(){var e;(e=this.accordionBtnHeading)===null||e===void 0?void 0:e.focus()}componentWillLoad(){a(this.disabled,this.el)}disconnectedCallback(){const e=this.expandedContentEl;if(e){e.removeEventListener("transitionend",(t=>this.setExpandedContentStyle(t,e)),true);e.removeEventListener("transitionend",(t=>this.hideExpandedContent(t,e)),true)}}componentDidLoad(){if(this.expanded&&this.expandedContentEl){this.expandedContentEl.style.height="auto";this.expandedContentEl.style.setProperty(this.CONTENT_VISIBILITY_PROPERTY,"visible");this.expandedContentEl.classList.add(h)}}render(){const{size:e,disabled:t,expanded:n,theme:a}=this;return i(o,{key:"840baa7799dc4c48c232a7dc170937bb563900d5",id:this.accordionId,class:{["ic-accordion-disabled"]:!!t,[`ic-theme-${a}`]:a!=="inherit"},"aria-disabled":t?"true":"false"},i("button",{key:"dce03cb5ba0f61a1d5b75ab1f648eaa970d5d78e",ref:e=>this.accordionBtnHeading=e,id:`${this.accordionId}-button`,disabled:t,tabindex:t?-1:0,class:{[`${e}`]:true,["section-button"]:true,["section-button-open"]:!!n&&!t},"aria-expanded":`${n}`,"aria-controls":"expanded-content-area",onClick:this.toggleExpanded},r(this.el,"icon")&&i("div",{key:"3301b5e4526831e7e8a4400d775f55d99ec29d27",class:"icon-container"},i("slot",{key:"aa49cdcd343009d6d5b7e68f5c1013cd7fcc7638",name:"icon"})),i("ic-typography",{key:"da324db78e29a81f0c5bb7209f870b8832c25d67",variant:"subtitle-large",class:"section-header"},r(this.el,"heading")?i("slot",{name:"heading"}):this.heading),i("span",{key:"9eb1350c8ae3f9c940e1299a17b3b510ccb66ef6",class:{["expand-chevron"]:true,["content-expanded-chevron"]:!!n&&!t},"aria-hidden":"true",innerHTML:s})),i("div",{key:"9b04e4a6df4def67189609215cd4849890900146",class:{["expanded-content"]:true},"aria-labelledby":`${this.accordionId}-button`,role:"region","aria-hidden":`${!n}`,id:"expanded-content-area",ref:e=>this.expandedContentEl=e},i("div",{key:"594f88da687634cbbad7e12d8df21a3dc7961a64",class:"expanded-content-inner"},this.message?i("ic-typography",{variant:"body"},this.message):i("slot",null))))}get el(){return n(this)}static get watchers(){return{disabled:["watchDisabledHandler"],expanded:["handleExpandedWatch"]}}};b.style=d;export{b as ic_accordion};
|
|
2
|
+
//# sourceMappingURL=p-9cf35c23.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["icAccordionCss","IcAccordionStyle0","accordionIds","EXPANDED_CONTENT_OPENED_CLASS","Accordion","constructor","hostRef","this","accordionId","CONTENT_VISIBILITY_PROPERTY","disabled","expanded","heading","message","size","theme","toggleExpanded","accordionClicked","emit","id","setAccordionAnimation","el","duration","property","delay","style","transitionDuration","transitionProperty","transitionTimingFunction","setExpandedContentStyle","ev","expandedContent","propertyName","clientHeight","classList","add","height","hideExpandedContent","setProperty","animateExpandedContent","expandedContentEl","prefersReducedMotion","window","matchMedia","matches","expandContent","collapseContent","elementHeight","scrollHeight","addEventListener","e","once","remove","requestAnimationFrame","watchDisabledHandler","removeDisabledFalse","handleExpandedWatch","setFocus","_a","accordionBtnHeading","focus","componentWillLoad","disconnectedCallback","removeEventListener","componentDidLoad","render","h","Host","key","class","ref","tabindex","onClick","isSlotUsed","name","variant","innerHTML","chevronIcon","role"],"sources":["src/components/ic-accordion/ic-accordion.css?tag=ic-accordion&encapsulation=shadow","src/components/ic-accordion/ic-accordion.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n border-bottom: var(--ic-space-1px) solid var(--ic-accordion-divider);\n}\n\n:host .expand-chevron {\n color: var(--ic-accordion-chevron);\n}\n\n:host(.ic-accordion-disabled) .expand-chevron {\n color: var(--ic-accordion-chevron-disabled);\n}\n\n.section-button.small {\n padding: var(--ic-space-xxs) var(--ic-space-xs);\n}\n\n.section-button.large {\n padding: var(--ic-space-sm) var(--ic-space-xs);\n}\n\n:host(:first-of-type) {\n border-top: var(--ic-space-1px) solid var(--ic-accordion-divider);\n}\n\n:focus {\n outline: none;\n}\n\n.section-button {\n background-color: transparent;\n display: flex;\n align-items: center;\n width: 100%;\n padding: var(--ic-space-xs);\n font-weight: var(--ic-font-weight-bold);\n border: none;\n}\n\n.section-header {\n --ic-typography-color: var(--ic-accordion-heading-text);\n\n color: var(--ic-accordion-heading-text);\n text-align: left;\n flex: 1 0;\n}\n\n:host(.ic-accordion-disabled) .section-header {\n --ic-typography-color: var(--ic-accordion-heading-text-disabled);\n\n color: var(--ic-accordion-heading-text-disabled);\n}\n\nbutton:hover {\n background-color: var(--ic-accordion-background-hover);\n cursor: pointer;\n}\n\nbutton:active {\n background-color: var(--ic-accordion-background-pressed);\n}\n\nbutton:focus {\n box-shadow: var(--ic-border-focus);\n border-radius: var(--ic-border-radius);\n transition: var(--ic-transition-duration-fast);\n}\n\nbutton:disabled {\n pointer-events: none;\n}\n\n.icon-container {\n margin: 0 var(--ic-space-xs) 0 0;\n display: flex;\n align-items: center;\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n color: var(--ic-accordion-icon);\n}\n\n:host(.ic-accordion-disabled) .icon-container {\n color: var(--ic-accordion-icon-disabled);\n}\n\n::slotted(svg) {\n width: var(--ic-space-md);\n height: var(--ic-space-md);\n}\n\n.expand-chevron {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n margin-left: calc(var(--ic-space-xl) + var(--ic-space-xs));\n transform: rotate(90deg);\n justify-self: end;\n}\n\n.content-expanded-chevron {\n transform: rotate(-90deg);\n}\n\n.expanded-content {\n --ic-typography-color: var(--ic-accordion-body-text);\n\n color: var(--ic-accordion-body-text);\n height: 0;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n visibility: var(--ic-expanded-content-visibility, hidden);\n}\n\n.expanded-content-inner {\n padding: var(--ic-space-xs);\n}\n\n.expanded-content-opened {\n overflow: visible;\n}\n\n@media (forced-colors: active) {\n button:focus {\n border: var(--ic-border-hc) !important;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n button:focus {\n transition: none;\n }\n}\n","import {\n Component,\n h,\n Prop,\n Element,\n Event,\n EventEmitter,\n Host,\n Watch,\n Method,\n} from \"@stencil/core\";\nimport { isSlotUsed, removeDisabledFalse } from \"../../utils/helpers\";\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\nimport { IcSizes, IcThemeMode } from \"../../utils/types\";\n\nlet accordionIds = 0;\nconst EXPANDED_CONTENT_OPENED_CLASS = \"expanded-content-opened\";\n\n/**\n * @slot heading - Content is placed as the accordion heading.\n * @slot icon - Content is placed to the left of the heading.\n */\n\n@Component({\n tag: \"ic-accordion\",\n styleUrl: \"ic-accordion.css\",\n shadow: true,\n})\nexport class Accordion {\n private accordionId = `ic-accordion-${accordionIds++}`;\n private expandedContentEl?: HTMLDivElement;\n private accordionBtnHeading?: HTMLButtonElement;\n private CONTENT_VISIBILITY_PROPERTY = \"--ic-expanded-content-visibility\";\n\n @Element() el: HTMLIcAccordionElement;\n\n /**\n * If `true`, the accordion will be disabled.\n */\n @Prop() disabled?: boolean = false;\n @Watch(\"disabled\")\n watchDisabledHandler(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n /**\n * If `true`, the accordion appears expanded.\n */\n @Prop({ mutable: true }) expanded?: boolean = false;\n\n /**\n * The section header outlining section content.\n */\n @Prop() heading?: string = \"\";\n\n /**\n * The main body message of the accordion.\n */\n @Prop() message?: string = \"\";\n\n /**\n * The size of the accordion.\n */\n @Prop() size?: IcSizes = \"medium\";\n\n /**\n * Sets the theme color to the dark or light theme color. \"inherit\" will set the color based on the system settings or ic-theme component.\n */\n @Prop() theme?: IcThemeMode = \"inherit\";\n\n /**\n * @internal Emitted when accordion is clicked.\n */\n @Event() accordionClicked: EventEmitter<{ id: string }>;\n\n // Every time expanded is set via toggleExpanded or accordionGroup, animate to open or close\n @Watch(\"expanded\")\n handleExpandedWatch(): void {\n this.animateExpandedContent();\n }\n\n /**\n * Sets focus on accordion heading.\n */\n @Method()\n async setFocus(): Promise<void> {\n this.accordionBtnHeading?.focus();\n }\n\n componentWillLoad(): void {\n removeDisabledFalse(this.disabled, this.el);\n }\n\n disconnectedCallback(): void {\n const expandedContentEl = this.expandedContentEl;\n if (expandedContentEl) {\n expandedContentEl.removeEventListener(\n \"transitionend\",\n (e) => this.setExpandedContentStyle(e, expandedContentEl),\n true\n );\n expandedContentEl.removeEventListener(\n \"transitionend\",\n (e) => this.hideExpandedContent(e, expandedContentEl),\n true\n );\n }\n }\n\n componentDidLoad(): void {\n // So accordion opens by default if expanded set to true\n if (this.expanded && this.expandedContentEl) {\n this.expandedContentEl.style.height = \"auto\";\n this.expandedContentEl.style.setProperty(\n this.CONTENT_VISIBILITY_PROPERTY,\n \"visible\"\n );\n this.expandedContentEl.classList.add(EXPANDED_CONTENT_OPENED_CLASS);\n }\n }\n\n private toggleExpanded = (): void => {\n this.expanded = !this.expanded;\n this.accordionClicked.emit({ id: this.accordionId });\n };\n\n // Set accordion animation\n private setAccordionAnimation = (\n el: HTMLElement,\n duration: string,\n property: string,\n delay: string\n ) => {\n el.style.transitionDuration = `${duration}ms`;\n el.style.transitionProperty = property;\n el.style.transitionTimingFunction = delay;\n };\n\n private setExpandedContentStyle = (\n ev: TransitionEvent,\n expandedContent: HTMLDivElement\n ) => {\n if (ev.propertyName === \"height\" && expandedContent.clientHeight > 0) {\n expandedContent.classList.add(EXPANDED_CONTENT_OPENED_CLASS);\n expandedContent.style.height = \"auto\";\n }\n };\n\n private hideExpandedContent = (\n ev: TransitionEvent,\n expandedContent: HTMLDivElement\n ) => {\n if (ev.propertyName === \"height\" && expandedContent.clientHeight === 0) {\n expandedContent.style.setProperty(\n this.CONTENT_VISIBILITY_PROPERTY,\n \"hidden\"\n );\n }\n };\n\n private animateExpandedContent = () => {\n const expandedContentEl = this.expandedContentEl;\n if (!expandedContentEl) return;\n\n const prefersReducedMotion = window.matchMedia(\n \"(prefers-reduced-motion: reduce)\"\n ).matches;\n\n if (this.expanded) {\n this.expandContent(expandedContentEl, prefersReducedMotion);\n return;\n }\n\n this.collapseContent(expandedContentEl, prefersReducedMotion);\n };\n\n private expandContent = (\n expandedContentEl: HTMLDivElement,\n prefersReducedMotion: boolean\n ) => {\n const elementHeight = expandedContentEl.scrollHeight;\n if (elementHeight <= 0) return;\n\n expandedContentEl.style.setProperty(\n this.CONTENT_VISIBILITY_PROPERTY,\n \"visible\"\n );\n\n if (prefersReducedMotion) {\n expandedContentEl.classList.add(EXPANDED_CONTENT_OPENED_CLASS);\n expandedContentEl.style.height = \"auto\";\n return;\n }\n\n expandedContentEl.style.height = `${elementHeight}px`;\n\n this.setAccordionAnimation(expandedContentEl, \"300\", \"height\", \"ease-out\");\n\n expandedContentEl.addEventListener(\n \"transitionend\",\n (e: TransitionEvent) => {\n this.setExpandedContentStyle(e, expandedContentEl);\n },\n { once: true }\n );\n };\n\n private collapseContent = (\n expandedContentEl: HTMLDivElement,\n prefersReducedMotion: boolean\n ) => {\n const elementHeight = expandedContentEl.scrollHeight;\n\n if (elementHeight <= 0) return;\n\n // Set the content panel as pixels from \"auto\" so it can be animated\n expandedContentEl.style.height = `${elementHeight}px`;\n\n if (prefersReducedMotion) {\n expandedContentEl.style.height = \"0\";\n expandedContentEl.classList.remove(EXPANDED_CONTENT_OPENED_CLASS);\n expandedContentEl.style.setProperty(\n this.CONTENT_VISIBILITY_PROPERTY,\n \"hidden\"\n );\n return;\n }\n\n requestAnimationFrame(() => {\n expandedContentEl.style.height = \"0\";\n });\n\n this.setAccordionAnimation(expandedContentEl, \"300\", \"height\", \"ease-in\");\n expandedContentEl.classList.remove(EXPANDED_CONTENT_OPENED_CLASS);\n expandedContentEl.addEventListener(\n \"transitionend\",\n (e) => {\n this.hideExpandedContent(e, expandedContentEl);\n },\n { once: true }\n );\n };\n\n render() {\n const { size, disabled, expanded, theme } = this;\n return (\n <Host\n id={this.accordionId}\n class={{\n [\"ic-accordion-disabled\"]: !!disabled,\n [`ic-theme-${theme}`]: theme !== \"inherit\",\n }}\n aria-disabled={disabled ? \"true\" : \"false\"}\n >\n <button\n ref={(el) => (this.accordionBtnHeading = el)}\n id={`${this.accordionId}-button`}\n disabled={disabled}\n tabindex={disabled ? -1 : 0}\n class={{\n [`${size}`]: true,\n [\"section-button\"]: true,\n [\"section-button-open\"]: !!expanded && !disabled,\n }}\n aria-expanded={`${expanded}`}\n aria-controls=\"expanded-content-area\"\n onClick={this.toggleExpanded}\n >\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon-container\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography variant=\"subtitle-large\" class=\"section-header\">\n {isSlotUsed(this.el, \"heading\") ? (\n <slot name=\"heading\" />\n ) : (\n this.heading\n )}\n </ic-typography>\n <span\n class={{\n [\"expand-chevron\"]: true,\n [\"content-expanded-chevron\"]: !!expanded && !disabled,\n }}\n aria-hidden=\"true\"\n innerHTML={chevronIcon}\n />\n </button>\n <div\n class={{\n [\"expanded-content\"]: true,\n }}\n aria-labelledby={`${this.accordionId}-button`}\n role=\"region\"\n aria-hidden={`${!expanded}`}\n id=\"expanded-content-area\"\n ref={(el) => (this.expandedContentEl = el)}\n >\n <div class=\"expanded-content-inner\">\n {this.message ? (\n <ic-typography variant=\"body\">{this.message}</ic-typography>\n ) : (\n <slot />\n )}\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["icSectionContainerCss","IcSectionContainerStyle0","SectionContainer","constructor","hostRef","this","aligned","fullHeight","render","h","Host","key","class"],"sources":["src/components/ic-section-container/ic-section-container.css?tag=ic-section-container&encapsulation=shadow","src/components/ic-section-container/ic-section-container.tsx"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n@media only screen and (max-width: 576px) {\n :host {\n --section-container-margin: var(--ic-space-xs);\n --section-container-max-width: var(--ic-breakpoint-sm);\n }\n}\n\n@media only screen and (min-width: 577px) {\n :host {\n --section-container-margin: var(--ic-space-md);\n --section-container-max-width: var(--ic-breakpoint-md);\n }\n}\n\n@media only screen and (min-width: 769px) {\n :host {\n --section-container-margin: var(--ic-space-md);\n --section-container-max-width: var(--ic-breakpoint-lg);\n }\n}\n\n@media only screen and (min-width: 993px) {\n :host {\n --section-container-margin: var(--ic-space-md);\n --section-container-max-width: var(--ic-breakpoint-xl);\n }\n}\n\n@media only screen and (min-width: 1201px) {\n :host {\n --section-container-margin: var(--ic-space-lg);\n --section-container-max-width: var(--ic-breakpoint-xl);\n }\n}\n\n:host {\n display: block;\n padding-top: var(--ic-space-md);\n padding-bottom: var(--ic-space-md);\n box-sizing: border-box;\n}\n\n:host(.aligned-center) {\n max-width: var(--section-container-max-width);\n margin-left: auto;\n margin-right: auto;\n padding-left: var(--section-container-margin);\n padding-right: var(--section-container-margin);\n}\n\n:host(.aligned-left) {\n max-width: var(--section-container-max-width);\n margin-left: var(--section-container-margin);\n margin-right: auto;\n padding-right: var(--section-container-margin);\n}\n\n:host(.aligned-full-width) {\n margin-left: var(--section-container-margin);\n margin-right: var(--section-container-margin);\n}\n\n:host(.vertical-padding) {\n padding-top: var(--ic-space-md);\n padding-bottom: var(--ic-space-md);\n}\n\n:host(.no-vertical-padding) {\n padding-top: 0;\n padding-bottom: 0;\n}\n","import { Component, Prop, Host, h } from \"@stencil/core\";\nimport { IcAlignment } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-section-container\",\n styleUrl: \"ic-section-container.css\",\n shadow: true,\n})\nexport class SectionContainer {\n /**\n * The alignment of the container.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * If `true`, the standard vertical padding from the container will be removed.\n */\n @Prop() fullHeight?: boolean = false;\n\n render() {\n const { aligned, fullHeight } = this;\n return (\n <Host\n class={{\n [\"aligned-left\"]: aligned === \"left\" || aligned === null,\n [\"aligned-center\"]: aligned === \"center\",\n [\"aligned-full-width\"]: aligned === \"full-width\",\n [\"no-vertical-padding\"]: !!fullHeight,\n }}\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"kDAAA,MAAMA,EAAwB,kzHAC9B,MAAAC,EAAeD,E,MCOFE,EAAgB,MAL7B,WAAAC,CAAAC,G,UASUC,KAAAC,QAAwB,OAKxBD,KAAAE,WAAuB,K,CAE/B,MAAAC,GACE,MAAMF,QAAEA,EAAOC,WAAEA,GAAeF,KAChC,OACEI,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CACL,CAAC,gBAAiBN,IAAY,QAAUA,IAAY,KACpD,CAAC,kBAAmBA,IAAY,SAChC,CAAC,sBAAuBA,IAAY,aACpC,CAAC,yBAA0BC,IAG7BE,EAAA,QAAAE,IAAA,6C","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["icSectionContainerCss","IcSectionContainerStyle0","SectionContainer","constructor","hostRef","this","aligned","fullHeight","render","h","Host","key","class"],"sources":["src/components/ic-section-container/ic-section-container.css?tag=ic-section-container&encapsulation=shadow","src/components/ic-section-container/ic-section-container.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n@media only screen and (max-width: 576px) {\n :host {\n --section-container-margin: var(--ic-space-xs);\n --section-container-max-width: var(--ic-breakpoint-sm);\n }\n}\n\n@media only screen and (min-width: 577px) {\n :host {\n --section-container-margin: var(--ic-space-md);\n --section-container-max-width: var(--ic-breakpoint-md);\n }\n}\n\n@media only screen and (min-width: 769px) {\n :host {\n --section-container-margin: var(--ic-space-md);\n --section-container-max-width: var(--ic-breakpoint-lg);\n }\n}\n\n@media only screen and (min-width: 993px) {\n :host {\n --section-container-margin: var(--ic-space-md);\n --section-container-max-width: var(--ic-breakpoint-xl);\n }\n}\n\n@media only screen and (min-width: 1201px) {\n :host {\n --section-container-margin: var(--ic-space-lg);\n --section-container-max-width: var(--ic-breakpoint-xl);\n }\n}\n\n:host {\n display: block;\n padding-top: var(--ic-space-md);\n padding-bottom: var(--ic-space-md);\n box-sizing: border-box;\n}\n\n:host(.aligned-center) {\n max-width: var(--section-container-max-width);\n margin-left: auto;\n margin-right: auto;\n padding-left: var(--section-container-margin);\n padding-right: var(--section-container-margin);\n}\n\n:host(.aligned-left) {\n max-width: var(--section-container-max-width);\n margin-left: var(--section-container-margin);\n margin-right: auto;\n padding-right: var(--section-container-margin);\n}\n\n:host(.aligned-full-width) {\n margin-left: var(--section-container-margin);\n margin-right: var(--section-container-margin);\n}\n\n:host(.vertical-padding) {\n padding-top: var(--ic-space-md);\n padding-bottom: var(--ic-space-md);\n}\n\n:host(.no-vertical-padding) {\n padding-top: 0;\n padding-bottom: 0;\n}\n","import { Component, Prop, Host, h } from \"@stencil/core\";\nimport { IcAlignment } from \"../../utils/types\";\n\n@Component({\n tag: \"ic-section-container\",\n styleUrl: \"ic-section-container.css\",\n shadow: true,\n})\nexport class SectionContainer {\n /**\n * The alignment of the container.\n */\n @Prop() aligned?: IcAlignment = \"left\";\n\n /**\n * If `true`, the standard vertical padding from the container will be removed.\n */\n @Prop() fullHeight?: boolean = false;\n\n render() {\n const { aligned, fullHeight } = this;\n return (\n <Host\n class={{\n [\"aligned-left\"]: aligned === \"left\" || aligned === null,\n [\"aligned-center\"]: aligned === \"center\",\n [\"aligned-full-width\"]: aligned === \"full-width\",\n [\"no-vertical-padding\"]: !!fullHeight,\n }}\n >\n <slot></slot>\n </Host>\n );\n }\n}\n"],"mappings":"kDAAA,MAAMA,EAAwB,kzHAC9B,MAAAC,EAAeD,E,MCOFE,EAAgB,MAL7B,WAAAC,CAAAC,G,UASUC,KAAAC,QAAwB,OAKxBD,KAAAE,WAAuB,K,CAE/B,MAAAC,GACE,MAAMF,QAAEA,EAAOC,WAAEA,GAAeF,KAChC,OACEI,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CACL,CAAC,gBAAiBN,IAAY,QAAUA,IAAY,KACpD,CAAC,kBAAmBA,IAAY,SAChC,CAAC,sBAAuBA,IAAY,aACpC,CAAC,yBAA0BC,IAG7BE,EAAA,QAAAE,IAAA,6C","ignoreList":[]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{r as t,h as e,H as i,g as n,c as o,F as s}from"./p-8e4e97b4.js";import{r as c,a as r,t as a,R as l,T as u,o as h,U as f}from"./p-eeb8d98a.js";import{s as d,f as p}from"./p-6215e2ae.js";import{C as m}from"./p-c2e091d7.js";import{c as b}from"./p-68a5aaff.js";const v="ic-input-component-container{display:flex;border:var(--ic-border-width) solid\n var(--border-color, var(--ic-architectural-400));border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-slow);height:2.5rem;min-height:2.5rem;width:var(--input-width, 20rem);padding:var(--ic-space-1px);background-color:var(--input-bg-color, var(--ic-color-background-primary));box-sizing:border-box;fill:var(--ic-architectural-400);outline:none}ic-input-component-container.ic-input-component-container-full-width{width:100%;max-width:none}ic-input-component-container.ic-input-component-container-disabled,ic-input-component-container.ic-input-component-container-disabled:hover{border:var(--ic-border-width) dashed\n var(--border-color-disabled, var(--ic-color-border-neutral-disabled))}ic-input-component-container.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-small.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-large.ic-input-component-container-readonly{height:auto;background:transparent}ic-input-component-container.ic-input-component-container-readonly,ic-input-component-container.ic-input-component-container-readonly:hover{border:none;padding:0}ic-input-component-container.ic-input-component-container-error{border:var(--ic-space-xxxs) solid\n var(--border-color-error, var(--ic-color-border-error));padding:0}ic-input-component-container.ic-input-component-container-error:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-error-hover, var(--ic-color-border-error-hover))}ic-input-component-container.ic-input-component-container-error:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-error-pressed, var(--ic-color-border-error-pressed))}ic-input-component-container.ic-input-component-container-warning{border:var(--ic-space-xxxs) solid\n var(--border-color-warning, var(--ic-color-border-warning));padding:0}ic-input-component-container.ic-input-component-container-warning:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-warning-hover, var(--ic-color-border-warning-hover))}ic-input-component-container.ic-input-component-container-warning:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-warning-pressed, var(--ic-color-border-warning-pressed))}ic-input-component-container.ic-input-component-container-success{border:var(--ic-space-xxxs) solid\n var(--border-color-success, var(--ic-color-border-success));padding:0}ic-input-component-container.ic-input-component-container-success:hover{border:var(--ic-space-xxxs) solid\n var(--border-color-success-hover, var(--ic-color-border-success-hover))}ic-input-component-container.ic-input-component-container-success:focus-within{border:var(--ic-space-xxxs) solid\n var(--border-color-success-pressed, var(--ic-color-border-success-pressed))}ic-input-component-container.ic-input-component-container-small{height:var(--ic-space-xl);min-height:var(--ic-space-xl)}ic-input-component-container.ic-input-component-container-large{height:var(--ic-space-xxl);min-height:var(--ic-space-xxl)}ic-input-component-container.ic-input-component-container-multiline{height:auto}ic-input-component-container .icon-container{margin-top:var(--ic-space-xxs);margin-left:0.438rem;display:flex;align-items:center}ic-input-component-container.ic-input-component-container-multiline .icon-container,ic-input-component-container.ic-input-component-container-multiline.ic-input-component-container-small .icon-container{margin-top:0.375rem;display:block}ic-input-component-container.ic-input-component-container-readonly .icon-container{margin-left:-0.313rem}ic-input-component-container.ic-input-component-container-disabled ::-moz-placeholder{display:none}ic-input-component-container.ic-input-component-container-disabled ::placeholder{display:none}ic-input-component-container .inline-success{margin:var(--ic-space-xs) 0.375rem;display:flex;align-items:center}ic-input-component-container .inline-success>svg{fill:var(--ic-input-component-container-success-icon-inline-color);height:1.25rem;width:1.25rem}ic-input-component-container:hover{border:var(--ic-input-component-container-hover-border);border-color:var(--border-color-hover, var(--ic-color-border-neutral-hover));color:var(--ic-action-monochrome-hover-dark)}ic-input-component-container:focus{border:var(--ic-border-pressed);border-color:var(\n --border-color-pressed,\n var(--ic-color-border-neutral-pressed)\n )}.focus-indicator{display:flex;width:100%;margin:-0.125rem;padding:0.125rem;border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast)}.focus-indicator:focus-within,.focus-indicator-enabled{box-shadow:var(--ic-border-focus)}.focus-indicator.ic-input-component-container-dark:focus-within{box-shadow:var(--ic-border-focus)}@media (forced-colors: active){ic-input-component-container,.focus-indicator{transition:none}ic-input-component-container:focus-within{border:var(--ic-border-width) solid Highlight;outline:0.125rem solid Highlight}ic-input-component-container.ic-input-component-container-disabled,ic-input-component-container.ic-input-component-container-disabled:hover{border:var(--ic-border-width) dashed GrayText}}@media screen AND (max-width: 22rem){ic-input-component-container{max-width:var(--input-width, 20rem);width:100%}}@media (prefers-reduced-motion: reduce){ic-input-component-container,.focus-indicator{transition:none}}";const g=v;const y=class{constructor(e){t(this,e);this.disabled=false;this.fullWidth=false;this.multiLine=false;this.readonly=false;this.size="medium";this.validationInline=false;this.validationStatus=""}watchDisabledHandler(){c(this.disabled,this.el)}componentWillLoad(){c(this.disabled,this.el)}componentDidLoad(){this.hostMutationObserver=new MutationObserver((t=>r(t,"left-icon",this)));this.hostMutationObserver.observe(this.el,{childList:true})}render(){const{size:t,validationStatus:n,disabled:o,readonly:s,multiLine:c,fullWidth:r,validationInline:u}=this;return e(i,{key:"89ddddb905fb2169968a978feb1db2ddaed8fb0c",class:{[`ic-input-component-container-${t}`]:true,[`ic-input-component-container-${n}`]:n!==""&&!o&&!s,"ic-input-component-container-disabled":!!o,"ic-input-component-container-readonly":!!s,"ic-input-component-container-multiline":!!c,"ic-input-component-container-full-width":!!r},"aria-disabled":o?"true":null},e("div",{key:"e26afb0f2d7b78a1ca9b1ec3976b8e8fa3b2f3fe",class:"focus-indicator"},a(this.el,"left-icon")&&e("div",{key:"d314cf7303bab259eb78c85f38b943d758e6d874",class:"icon-container"},e("slot",{key:"128cdd1e6a537838dc490b33e2a657e613d6c969",name:"left-icon"})),e("slot",{key:"9d5fd3e67c6658f988a335e080b6e7141d1c8712"}),u&&n===l.Success&&e("span",{key:"119749d6c32bebe9c8540fa7fadb28e7387428e5",class:"inline-success",innerHTML:d})))}get el(){return n(this)}static get watchers(){return{disabled:["watchDisabledHandler"]}}};y.style=g;const x="ic-input-container .component-container{display:flex;flex-direction:column}";const w=x;const k=class{constructor(e){t(this,e);this.disabled=false;this.readonly=false}render(){return e(i,{key:"f8a56b6ed7706188078d28f8fd7216c046fe32a2"},e("div",{key:"f7d41111869769c9ab8e5ad72ee936827ef36c91",class:{["component-container"]:true,["disabled"]:!!this.disabled,["readonly"]:!!this.readonly}},e("slot",{key:"42fc42d0f226b11b93ab910c00ed25c027ebb549"})))}};k.style=w;var T=typeof globalThis!=="undefined"?globalThis:typeof window!=="undefined"?window:typeof global!=="undefined"?global:typeof self!=="undefined"?self:{};var S={exports:{}};
|
|
2
|
+
/*! @license DOMPurify 3.4.13 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.13/LICENSE */(function(t,e){(function(e,i){t.exports=i()})(T,(function(){function t(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=Array(e);i<e;i++)n[i]=t[i];return n}function e(t){if(Array.isArray(t))return t}function i(t,e){var i=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=i){var n,o,s,c,r=[],a=true,l=false;try{if(s=(i=i.call(t)).next,0===e);else for(;!(a=(n=s.call(i)).done)&&(r.push(n.value),r.length!==e);a=!0);}catch(t){l=true,o=t}finally{try{if(!a&&null!=i.return&&(c=i.return(),Object(c)!==c))return}finally{if(l)throw o}}return r}}function n(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function o(t,o){return e(t)||i(t,o)||s(t,o)||n()}function s(e,i){if(e){if("string"==typeof e)return t(e,i);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?t(e,i):void 0}}const c=Object.entries,r=Object.setPrototypeOf,a=Object.isFrozen,l=Object.getPrototypeOf,u=Object.getOwnPropertyDescriptor;let h=Object.freeze,f=Object.seal,d=Object.create;let p=typeof Reflect!=="undefined"&&Reflect,m=p.apply,b=p.construct;if(!h){h=function t(e){return e}}if(!f){f=function t(e){return e}}if(!m){m=function t(e,i){for(var n=arguments.length,o=new Array(n>2?n-2:0),s=2;s<n;s++){o[s-2]=arguments[s]}return e.apply(i,o)}}if(!b){b=function t(e){for(var i=arguments.length,n=new Array(i>1?i-1:0),o=1;o<i;o++){n[o-1]=arguments[o]}return new e(...n)}}const v=M(Array.prototype.forEach);const g=M(Array.prototype.lastIndexOf);const y=M(Array.prototype.pop);const x=M(Array.prototype.push);const w=M(Array.prototype.splice);const k=Array.isArray;const T=M(String.prototype.toLowerCase);const S=M(String.prototype.toString);const A=M(String.prototype.match);const z=M(String.prototype.replace);const E=M(String.prototype.indexOf);const O=M(String.prototype.trim);const L=M(Number.prototype.toString);const D=M(Boolean.prototype.toString);const I=typeof BigInt==="undefined"?null:M(BigInt.prototype.toString);const N=typeof Symbol==="undefined"?null:M(Symbol.prototype.toString);const R=M(Object.prototype.hasOwnProperty);const _=M(Object.prototype.toString);const j=M(RegExp.prototype.test);const C=B(TypeError);function M(t){return function(e){if(e instanceof RegExp){e.lastIndex=0}for(var i=arguments.length,n=new Array(i>1?i-1:0),o=1;o<i;o++){n[o-1]=arguments[o]}return m(t,e,n)}}function B(t){return function(){for(var e=arguments.length,i=new Array(e),n=0;n<e;n++){i[n]=arguments[n]}return b(t,i)}}function F(t,e){let i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:T;if(r){r(t,null)}if(!k(e)){return t}let n=e.length;while(n--){let o=e[n];if(typeof o==="string"){const t=i(o);if(t!==o){if(!a(e)){e[n]=t}o=t}}t[o]=true}return t}function H(t){for(let e=0;e<t.length;e++){const i=R(t,e);if(!i){t[e]=null}}return t}function $(t){const e=d(null);for(const n of c(t)){var i=o(n,2);const s=i[0];const c=i[1];const r=R(t,s);if(r){if(k(c)){e[s]=H(c)}else if(c&&typeof c==="object"&&c.constructor===Object){e[s]=$(c)}else{e[s]=c}}}return e}function P(t){switch(typeof t){case"string":{return t}case"number":{return L(t)}case"boolean":{return D(t)}case"bigint":{return I?I(t):"0"}case"symbol":{return N?N(t):"Symbol()"}case"undefined":{return _(t)}case"function":case"object":{if(t===null){return _(t)}const e=t;const i=U(e,"toString");if(typeof i==="function"){const t=i(e);return typeof t==="string"?t:_(t)}return _(t)}default:{return _(t)}}}function U(t,e){while(t!==null){const i=u(t,e);if(i){if(i.get){return M(i.get)}if(typeof i.value==="function"){return M(i.value)}}t=l(t)}function i(){return null}return i}function G(t){try{j(t,"");return true}catch(t){return false}}const W=h(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]);const q=h(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]);const Y=h(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]);const K=h(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]);const V=h(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]);const J=h(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]);const X=h(["#text"]);const Q=h(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]);const Z=h(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]);const tt=h(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]);const et=h(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]);const it=f(/{{[\w\W]*|^[\w\W]*}}/g);const nt=f(/<%[\w\W]*|^[\w\W]*%>/g);const ot=f(/\${[\w\W]*/g);const st=f(/^data-[\-\w.\u00B7-\uFFFF]+$/);const ct=f(/^aria-[\-\w]+$/);const rt=f(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i);const at=f(/^(?:\w+script|data):/i);const lt=f(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g);const ut=f(/^html$/i);const ht=f(/^[a-z][.\w]*(-[.\w]+)+$/i);const ft=f(/<[/\w!]/g);const dt=f(/<[/\w]/g);const pt=f(/<\/no(script|embed|frames)/i);const mt=f(/\/>/i);const bt={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12};const vt=function t(){return typeof window==="undefined"?null:window};const gt=function t(e,i){if(typeof e!=="object"||typeof e.createPolicy!=="function"){return null}let n=null;const o="data-tt-policy-suffix";if(i&&i.hasAttribute(o)){n=i.getAttribute(o)}const s="dompurify"+(n?"#"+n:"");try{return e.createPolicy(s,{createHTML(t){return t},createScriptURL(t){return t}})}catch(t){console.warn("TrustedTypes policy "+s+" could not be created.");return null}};const yt=function t(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};const xt=function t(e,i,n,o){return R(e,i)&&k(e[i])?F(o.base?$(o.base):{},e[i],o.transform):n};function wt(){let t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:vt();const e=t=>wt(t);e.version="3.4.13";e.removed=[];if(!t||!t.document||t.document.nodeType!==bt.document||!t.Element){e.isSupported=false;return e}let i=t.document;const n=i;const o=n.currentScript;const s=t.HTMLTemplateElement,r=t.Node,a=t.Element,l=t.NodeFilter;const u=t.DOMParser,p=t.trustedTypes;const m=a.prototype;const b=U(m,"cloneNode");const L=U(m,"remove");const D=U(m,"nextSibling");const I=U(m,"childNodes");const N=U(m,"parentNode");const _=U(m,"shadowRoot");const M=U(m,"attributes");const B=r&&r.prototype?U(r.prototype,"nodeType"):null;const H=r&&r.prototype?U(r.prototype,"nodeName"):null;const kt=r&&r.prototype?U(r.prototype,"ownerDocument"):null;if(typeof s==="function"){const t=i.createElement("template");if(t.content&&t.content.ownerDocument){i=t.content.ownerDocument}}let Tt;let St="";let At;let zt=false;let Et=0;const Ot=function t(){if(Et>0){throw C("A configured TRUSTED_TYPES_POLICY callback (createHTML or "+"createScriptURL) must not call DOMPurify.sanitize, as that causes "+"infinite recursion. Do not pass a policy whose callbacks wrap "+'DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted '+'Types" section of the README.')}};const Lt=function t(e){Ot();Et++;try{return Tt.createHTML(e)}finally{Et--}};const Dt=function t(e){Ot();Et++;try{return Tt.createScriptURL(e)}finally{Et--}};const It=function t(){if(!zt){At=gt(p,o);zt=true}return At};const Nt=i,Rt=Nt.implementation,_t=Nt.createNodeIterator,jt=Nt.createDocumentFragment,Ct=Nt.getElementsByTagName;const Mt=n.importNode;let Bt=yt();e.isSupported=typeof c==="function"&&typeof N==="function"&&Rt&&Rt.createHTMLDocument!==undefined;const Ft=it,Ht=nt,$t=ot,Pt=st,Ut=ct,Gt=at,Wt=lt,qt=ht;let Yt=rt;let Kt=null;const Vt=F({},[...W,...q,...Y,...V,...X]);let Jt=null;const Xt=F({},[...Q,...Z,...tt,...et]);let Qt=Object.seal(d(null,{tagNameCheck:{writable:true,configurable:false,enumerable:true,value:null},attributeNameCheck:{writable:true,configurable:false,enumerable:true,value:null},allowCustomizedBuiltInElements:{writable:true,configurable:false,enumerable:true,value:false}}));let Zt=null;let te=null;const ee=Object.seal(d(null,{tagCheck:{writable:true,configurable:false,enumerable:true,value:null},attributeCheck:{writable:true,configurable:false,enumerable:true,value:null}}));let ie=true;let ne=true;let oe=false;let se=true;let ce=false;let re=true;let ae=false;let le=false;let ue=null;let he=null;let fe=false;let de=false;let pe=false;let me=false;let be=true;let ve=false;const ge="user-content-";let ye=true;let xe=false;let we={};let ke=null;const Te=F({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let Se=null;const Ae=F({},["audio","video","img","source","image","track"]);let ze=null;const Ee=F({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]);const Oe="http://www.w3.org/1998/Math/MathML";const Le="http://www.w3.org/2000/svg";const De="http://www.w3.org/1999/xhtml";let Ie=De;let Ne=false;let Re=null;const _e=F({},[Oe,Le,De],S);const je=h(["mi","mo","mn","ms","mtext"]);let Ce=F({},je);const Me=h(["annotation-xml"]);let Be=F({},Me);const Fe=F({},["title","style","font","a","script"]);let He=null;const $e=["application/xhtml+xml","text/html"];const Pe="text/html";let Ue=null;let Ge=null;const We=i.createElement("form");const qe=function t(e){return e instanceof RegExp||e instanceof Function};const Ye=function t(){let e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};if(Ge&&Ge===e){return}if(!e||typeof e!=="object"){e={}}e=$(e);He=$e.indexOf(e.PARSER_MEDIA_TYPE)===-1?Pe:e.PARSER_MEDIA_TYPE;Ue=He==="application/xhtml+xml"?S:T;Kt=xt(e,"ALLOWED_TAGS",Vt,{transform:Ue});Jt=xt(e,"ALLOWED_ATTR",Xt,{transform:Ue});Re=xt(e,"ALLOWED_NAMESPACES",_e,{transform:S});ze=xt(e,"ADD_URI_SAFE_ATTR",Ee,{transform:Ue,base:Ee});Se=xt(e,"ADD_DATA_URI_TAGS",Ae,{transform:Ue,base:Ae});ke=xt(e,"FORBID_CONTENTS",Te,{transform:Ue});Zt=xt(e,"FORBID_TAGS",$({}),{transform:Ue});te=xt(e,"FORBID_ATTR",$({}),{transform:Ue});we=R(e,"USE_PROFILES")?e.USE_PROFILES&&typeof e.USE_PROFILES==="object"?$(e.USE_PROFILES):e.USE_PROFILES:false;ie=e.ALLOW_ARIA_ATTR!==false;ne=e.ALLOW_DATA_ATTR!==false;oe=e.ALLOW_UNKNOWN_PROTOCOLS||false;se=e.ALLOW_SELF_CLOSE_IN_ATTR!==false;ce=e.SAFE_FOR_TEMPLATES||false;re=e.SAFE_FOR_XML!==false;ae=e.WHOLE_DOCUMENT||false;de=e.RETURN_DOM||false;pe=e.RETURN_DOM_FRAGMENT||false;me=e.RETURN_TRUSTED_TYPE||false;fe=e.FORCE_BODY||false;be=e.SANITIZE_DOM!==false;ve=e.SANITIZE_NAMED_PROPS||false;ye=e.KEEP_CONTENT!==false;xe=e.IN_PLACE||false;Yt=G(e.ALLOWED_URI_REGEXP)?e.ALLOWED_URI_REGEXP:rt;Ie=typeof e.NAMESPACE==="string"?e.NAMESPACE:De;Ce=R(e,"MATHML_TEXT_INTEGRATION_POINTS")&&e.MATHML_TEXT_INTEGRATION_POINTS&&typeof e.MATHML_TEXT_INTEGRATION_POINTS==="object"?$(e.MATHML_TEXT_INTEGRATION_POINTS):F({},je);Be=R(e,"HTML_INTEGRATION_POINTS")&&e.HTML_INTEGRATION_POINTS&&typeof e.HTML_INTEGRATION_POINTS==="object"?$(e.HTML_INTEGRATION_POINTS):F({},Me);const i=R(e,"CUSTOM_ELEMENT_HANDLING")&&e.CUSTOM_ELEMENT_HANDLING&&typeof e.CUSTOM_ELEMENT_HANDLING==="object"?$(e.CUSTOM_ELEMENT_HANDLING):d(null);Qt=d(null);if(R(i,"tagNameCheck")&&qe(i.tagNameCheck)){Qt.tagNameCheck=i.tagNameCheck}if(R(i,"attributeNameCheck")&&qe(i.attributeNameCheck)){Qt.attributeNameCheck=i.attributeNameCheck}if(R(i,"allowCustomizedBuiltInElements")&&typeof i.allowCustomizedBuiltInElements==="boolean"){Qt.allowCustomizedBuiltInElements=i.allowCustomizedBuiltInElements}f(Qt);if(ce){ne=false}if(pe){de=true}if(we){Kt=F({},X);Jt=d(null);if(we.html===true){F(Kt,W);F(Jt,Q)}if(we.svg===true){F(Kt,q);F(Jt,Z);F(Jt,et)}if(we.svgFilters===true){F(Kt,Y);F(Jt,Z);F(Jt,et)}if(we.mathMl===true){F(Kt,V);F(Jt,tt);F(Jt,et)}}ee.tagCheck=null;ee.attributeCheck=null;if(R(e,"ADD_TAGS")){if(typeof e.ADD_TAGS==="function"){ee.tagCheck=e.ADD_TAGS}else if(k(e.ADD_TAGS)){if(Kt===Vt){Kt=$(Kt)}F(Kt,e.ADD_TAGS,Ue)}}if(R(e,"ADD_ATTR")){if(typeof e.ADD_ATTR==="function"){ee.attributeCheck=e.ADD_ATTR}else if(k(e.ADD_ATTR)){if(Jt===Xt){Jt=$(Jt)}F(Jt,e.ADD_ATTR,Ue)}}if(R(e,"ADD_URI_SAFE_ATTR")&&k(e.ADD_URI_SAFE_ATTR)){F(ze,e.ADD_URI_SAFE_ATTR,Ue)}if(R(e,"FORBID_CONTENTS")&&k(e.FORBID_CONTENTS)){if(ke===Te){ke=$(ke)}F(ke,e.FORBID_CONTENTS,Ue)}if(R(e,"ADD_FORBID_CONTENTS")&&k(e.ADD_FORBID_CONTENTS)){if(ke===Te){ke=$(ke)}F(ke,e.ADD_FORBID_CONTENTS,Ue)}if(ye){Kt["#text"]=true}if(ae){F(Kt,["html","head","body"])}if(Kt.table){F(Kt,["tbody"]);delete Zt.tbody}if(e.TRUSTED_TYPES_POLICY){if(typeof e.TRUSTED_TYPES_POLICY.createHTML!=="function"){throw C('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.')}if(typeof e.TRUSTED_TYPES_POLICY.createScriptURL!=="function"){throw C('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.')}const t=Tt;Tt=e.TRUSTED_TYPES_POLICY;try{St=Lt("")}catch(e){Tt=t;throw e}}else if(e.TRUSTED_TYPES_POLICY===null){Tt=undefined;St=""}else{if(Tt===undefined){Tt=It()}if(Tt&&typeof St==="string"){St=Lt("")}}if(h){h(e)}Ge=e};const Ke=F({},[...q,...Y,...K]);const Ve=F({},[...V,...J]);const Je=function t(e,i,n){if(i.namespaceURI===De){return e==="svg"}if(i.namespaceURI===Oe){return e==="svg"&&(n==="annotation-xml"||Ce[n])}return Boolean(Ke[e])};const Xe=function t(e,i,n){if(i.namespaceURI===De){return e==="math"}if(i.namespaceURI===Le){return e==="math"&&Be[n]}return Boolean(Ve[e])};const Qe=function t(e,i,n){if(i.namespaceURI===Le&&!Be[n]){return false}if(i.namespaceURI===Oe&&!Ce[n]){return false}return!Ve[e]&&(Fe[e]||!Ke[e])};const Ze=function t(e){let i=N(e);if(!i||!i.tagName){i={namespaceURI:Ie,tagName:"template"}}const n=T(e.tagName);const o=T(i.tagName);if(!Re[e.namespaceURI]){return false}if(e.namespaceURI===Le){return Je(n,i,o)}if(e.namespaceURI===Oe){return Xe(n,i,o)}if(e.namespaceURI===De){return Qe(n,i,o)}if(He==="application/xhtml+xml"&&Re[e.namespaceURI]){return true}return false};const ti=function t(i){x(e.removed,{element:i});try{N(i).removeChild(i)}catch(t){L(i);if(!N(i)){throw C("a node selected for removal could not be detached from its tree "+"and cannot be safely returned; refusing to sanitize in place")}}};const ei=function t(e){oi(e);const i=I(e);if(i){const t=[];v(i,(e=>{x(t,e)}));v(t,(t=>{try{L(t)}catch(t){}}))}const n=M(e);if(n){for(let t=n.length-1;t>=0;--t){const i=n[t];const o=i&&i.name;if(typeof o==="string"){try{e.removeAttribute(o)}catch(t){}}}}};const ii=function t(i,n){try{x(e.removed,{attribute:n.getAttributeNode(i),from:n})}catch(t){x(e.removed,{attribute:null,from:n})}n.removeAttribute(i);if(i==="is"){if(de||pe){try{ti(n)}catch(t){}}else{try{n.setAttribute(i,"")}catch(t){}}}};const ni=function t(e){const i=M(e);if(!i){return}for(let t=i.length-1;t>=0;--t){const n=i[t];const o=n&&n.name;if(typeof o!=="string"||Jt[Ue(o)]){continue}try{e.removeAttribute(o)}catch(t){}}};const oi=function t(e){const i=[e];while(i.length>0){const t=i.pop();const e=B?B(t):t.nodeType;if(e===bt.element){ni(t)}const n=I(t);if(n){for(let t=n.length-1;t>=0;--t){i.push(n[t])}}}};const si=function t(e){if(!re){return}const i=[e];while(i.length>0){const t=i.pop();const e=B?B(t):t.nodeType;if(e===bt.processingInstruction||e===bt.comment&&j(dt,t.data)){try{L(t)}catch(t){}continue}if(e===bt.element){const e=t;const i=Ue(H?H(t):t.nodeName);try{if(e.hasAttribute&&e.hasAttribute("patchsrc")){e.removeAttribute("patchsrc")}if(e.hasAttribute&&e.hasAttribute("for")&&i!=="label"&&i!=="output"){e.removeAttribute("for")}}catch(t){}}const n=I(t);if(n){for(let t=n.length-1;t>=0;--t){i.push(n[t])}}}};const ci=function t(e){let n=null;let o=null;if(fe){e="<remove></remove>"+e}else{const t=A(e,/^[\r\n\t ]+/);o=t&&t[0]}if(He==="application/xhtml+xml"&&Ie===De){e='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+e+"</body></html>"}const s=Tt?Lt(e):e;if(Ie===De){try{n=(new u).parseFromString(s,He)}catch(t){}}if(!n||!n.documentElement){n=Rt.createDocument(Ie,"template",null);try{n.documentElement.innerHTML=Ne?St:s}catch(t){}}const c=n.body||n.documentElement;if(e&&o){c.insertBefore(i.createTextNode(o),c.childNodes[0]||null)}if(Ie===De){return Ct.call(n,ae?"html":"body")[0]}return ae?n.documentElement:c};const ri=function t(e){const i=kt?kt(e):e.ownerDocument;return _t.call(i||e,e,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT|l.SHOW_PROCESSING_INSTRUCTION|l.SHOW_CDATA_SECTION,null)};const ai=function t(e){e=z(e,Ft," ");e=z(e,Ht," ");e=z(e,$t," ");return e};const li=function t(e){var i;e.normalize();const n=kt?kt(e):e.ownerDocument;const o=_t.call(n||e,e,l.SHOW_TEXT|l.SHOW_COMMENT|l.SHOW_CDATA_SECTION|l.SHOW_PROCESSING_INSTRUCTION,null);let s=o.nextNode();while(s){s.data=ai(s.data);s=o.nextNode()}const c=(i=e.querySelectorAll)===null||i===void 0?void 0:i.call(e,"template");if(c){v(c,(t=>{if(hi(t.content)){li(t.content)}}))}};const ui=function t(e){const i=H?H(e):null;if(typeof i!=="string"){return false}if(Ue(i)!=="form"){return false}return typeof e.nodeName!=="string"||typeof e.textContent!=="string"||typeof e.removeChild!=="function"||e.attributes!==M(e)||typeof e.removeAttribute!=="function"||typeof e.setAttribute!=="function"||typeof e.namespaceURI!=="string"||typeof e.insertBefore!=="function"||typeof e.hasChildNodes!=="function"||e.nodeType!==B(e)||e.childNodes!==I(e)};const hi=function t(e){if(!B||typeof e!=="object"||e===null){return false}try{return B(e)===bt.documentFragment}catch(t){return false}};const fi=function t(e){if(!B||typeof e!=="object"||e===null){return false}try{return typeof B(e)==="number"}catch(t){return false}};function di(t,i,n){if(t.length===0){return}v(t,(t=>{t.call(e,i,n,Ge)}))}const pi=function t(e,i){if(re&&e.hasChildNodes()&&!fi(e.firstElementChild)&&j(ft,e.textContent)&&j(ft,e.innerHTML)){return true}if(re&&e.namespaceURI===De&&i==="style"&&fi(e.firstElementChild)){return true}if(e.nodeType===bt.processingInstruction){return true}if(re&&e.nodeType===bt.comment&&j(dt,e.data)){return true}return false};const mi=function t(e,i,n){if(!Zt[i]&&xi(i)){if(Qt.tagNameCheck instanceof RegExp&&j(Qt.tagNameCheck,i)){return false}if(Qt.tagNameCheck instanceof Function&&Qt.tagNameCheck(i)){return false}}if(ye&&!ke[i]){const t=N(e);const i=I(e);if(i&&t){const o=i.length;for(let s=o-1;s>=0;--s){const o=e===n?b(i[s],true):i[s];t.insertBefore(o,D(e))}}}ti(e);return true};const bi=function t(e,i,n,o){if(e.length===0){return i}return i===n||i===o?$(i):i};const vi=function t(i,n){di(Bt.beforeSanitizeElements,i,null);if(i!==n&&N(i)===null){if(xe){oi(i)}return true}if(ui(i)){ti(i);return true}const o=Ue(H?H(i):i.nodeName);Kt=bi(Bt.uponSanitizeElement,Kt,Vt,ue);di(Bt.uponSanitizeElement,i,{tagName:o,allowedTags:Kt});if(i!==n&&N(i)===null){if(xe){oi(i)}return true}if(pi(i,o)){ti(i);return true}if(Zt[o]||!(ee.tagCheck instanceof Function&&ee.tagCheck(o))&&!Kt[o]){const t=mi(i,o,n);if(t===false){di(Bt.afterSanitizeElements,i,null)}return t}const s=B?B(i):i.nodeType;if(s===bt.element&&!Ze(i)){ti(i);return true}if((o==="noscript"||o==="noembed"||o==="noframes")&&j(pt,i.innerHTML)){ti(i);return true}if(ce&&i.nodeType===bt.text){const t=ai(i.textContent);if(i.textContent!==t){x(e.removed,{element:i.cloneNode()});i.textContent=t}}di(Bt.afterSanitizeElements,i,null);return false};const gi=function t(e,n,o){if(te[n]){return false}if(re&&n==="patchsrc"){return false}if(re&&n==="for"&&e!=="label"&&e!=="output"){return false}if(be&&(n==="id"||n==="name")&&(o in i||o in We)){return false}const s=Jt[n]||ee.attributeCheck instanceof Function&&ee.attributeCheck(n,e);if(ne&&j(Pt,n));else if(ie&&j(Ut,n));else if(!s){if(xi(e)&&(Qt.tagNameCheck instanceof RegExp&&j(Qt.tagNameCheck,e)||Qt.tagNameCheck instanceof Function&&Qt.tagNameCheck(e))&&(Qt.attributeNameCheck instanceof RegExp&&j(Qt.attributeNameCheck,n)||Qt.attributeNameCheck instanceof Function&&Qt.attributeNameCheck(n,e))||n==="is"&&Qt.allowCustomizedBuiltInElements&&(Qt.tagNameCheck instanceof RegExp&&j(Qt.tagNameCheck,o)||Qt.tagNameCheck instanceof Function&&Qt.tagNameCheck(o)));else{return false}}else if(ze[n]);else if(j(Yt,z(o,Wt,"")));else if((n==="src"||n==="xlink:href"||n==="href")&&e!=="script"&&E(o,"data:")===0&&Se[e]);else if(oe&&!j(Gt,z(o,Wt,"")));else if(o){return false}else;return true};const yi=F({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]);const xi=function t(e){return!yi[T(e)]&&j(qt,e)};const wi=function t(e,i,n,o){if(Tt&&typeof p==="object"&&typeof p.getAttributeType==="function"&&!n){switch(p.getAttributeType(e,i)){case"TrustedHTML":{return Lt(o)}case"TrustedScriptURL":{return Dt(o)}}}return o};const ki=function t(i,n,o,s){try{if(o){i.setAttributeNS(o,n,s)}else{i.setAttribute(n,s)}if(ui(i)){ti(i)}else{y(e.removed)}}catch(t){ii(n,i)}};const Ti=function t(e){di(Bt.beforeSanitizeAttributes,e,null);const i=e.attributes;if(!i||ui(e)){return}Jt=bi(Bt.uponSanitizeAttribute,Jt,Xt,he);const n={attrName:"",attrValue:"",keepAttr:true,allowedAttributes:Jt,forceKeepAttr:undefined};let o=i.length;const s=Ue(e.nodeName);while(o--){const t=i[o];const c=t.name,r=t.namespaceURI,a=t.value;const l=Ue(c);const u=a;let h=c==="value"?u:O(u);n.attrName=l;n.attrValue=h;n.keepAttr=true;n.forceKeepAttr=undefined;di(Bt.uponSanitizeAttribute,e,n);h=n.attrValue;if(ve&&(l==="id"||l==="name")&&E(h,ge)!==0){ii(c,e);h=ge+h}if(re&&j(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,h)){ii(c,e);continue}if(l==="attributename"&&A(h,"href")){ii(c,e);continue}if(n.forceKeepAttr){continue}if(!n.keepAttr){ii(c,e);continue}if(!se&&j(mt,h)){ii(c,e);continue}if(ce){h=ai(h)}if(!gi(s,l,h)){ii(c,e);continue}h=wi(s,l,r,h);if(h!==u){ki(e,c,r,h)}}di(Bt.afterSanitizeAttributes,e,null)};const Si=function t(e){let i=null;const n=ri(e);di(Bt.beforeSanitizeShadowDOM,e,null);while(i=n.nextNode()){di(Bt.uponSanitizeShadowNode,i,null);vi(i,e);Ti(i);if(hi(i.content)){Si(i.content)}const t=B?B(i):i.nodeType;if(t===bt.element){const t=_(i);if(hi(t)){Ai(t);Si(t)}}}di(Bt.afterSanitizeShadowDOM,e,null)};const Ai=function t(e){const i=[{node:e,shadow:null}];while(i.length>0){const t=i.pop();if(t.shadow){Si(t.shadow);continue}const e=t.node;const n=B?B(e):e.nodeType;const o=n===bt.element;const s=I(e);if(s){for(let t=s.length-1;t>=0;--t){i.push({node:s[t],shadow:null})}}if(o){const t=H?H(e):null;if(typeof t==="string"&&Ue(t)==="template"){const t=e.content;if(hi(t)){i.push({node:t,shadow:null})}}}if(o){const t=_(e);if(hi(t)){i.push({node:null,shadow:t},{node:t,shadow:null})}}}};e.sanitize=function(t){let i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};let o=null;let s=null;let c=null;let r=null;Ne=!t;if(Ne){t="\x3c!--\x3e"}if(typeof t!=="string"&&!fi(t)){t=P(t);if(typeof t!=="string"){throw C("dirty is not a string, aborting")}}if(!e.isSupported){return t}if(le){Kt=ue;Jt=he}else{Ye(i)}if(Bt.uponSanitizeElement.length>0||Bt.uponSanitizeAttribute.length>0){Kt=$(Kt)}if(Bt.uponSanitizeAttribute.length>0){Jt=$(Jt)}e.removed=[];const a=xe&&typeof t!=="string"&&fi(t);if(a){si(t);const e=H?H(t):t.nodeName;if(typeof e==="string"){const i=Ue(e);if(!Kt[i]||Zt[i]){ei(t);throw C("root node is forbidden and cannot be sanitized in-place")}}if(ui(t)){ei(t);throw C("root node is clobbered and cannot be sanitized in-place")}try{Ai(t)}catch(e){ei(t);throw e}}else if(fi(t)){o=ci("\x3c!----\x3e");s=o.ownerDocument.importNode(t,true);if(s.nodeType===bt.element&&s.nodeName==="BODY"){o=s}else if(s.nodeName==="HTML"){o=s}else{o.appendChild(s)}Ai(s)}else{if(!de&&!ce&&!ae&&t.indexOf("<")===-1){return Tt&&me?Lt(t):t}o=ci(t);if(!o){return de?null:me?St:""}}if(o&&fe){ti(o.firstChild)}const l=a?t:o;try{const t=ri(l);while(c=t.nextNode()){vi(c,l);Ti(c);if(hi(c.content)){Si(c.content)}}}catch(i){if(a){ei(t);v(e.removed,(t=>{if(t.element){oi(t.element)}}))}throw i}if(a){v(e.removed,(t=>{if(t.element){oi(t.element)}}));if(ce){li(t)}return t}if(de){if(ce){li(o)}if(pe){r=jt.call(o.ownerDocument);while(o.firstChild){r.appendChild(o.firstChild)}}else{r=o}if(Jt.shadowroot||Jt.shadowrootmode){r=Mt.call(n,r,true)}return r}let u=ae?o.outerHTML:o.innerHTML;if(ae&&Kt["!doctype"]&&o.ownerDocument&&o.ownerDocument.doctype&&o.ownerDocument.doctype.name&&j(ut,o.ownerDocument.doctype.name)){u="<!DOCTYPE "+o.ownerDocument.doctype.name+">\n"+u}if(ce){u=ai(u)}return Tt&&me?Lt(u):u};e.setConfig=function(){let t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};Ye(t);le=true;ue=Kt;he=Jt};e.clearConfig=function(){Ge=null;le=false;ue=null;he=null;Tt=At;St=""};e.isValidAttribute=function(t,e,i){if(!Ge){Ye({})}const n=Ue(t);const o=Ue(e);return gi(n,o,i)};e.addHook=function(t,e){if(typeof e!=="function"){return}if(!R(Bt,t)){return}x(Bt[t],e)};e.removeHook=function(t,e){if(!R(Bt,t)){return undefined}if(e!==undefined){const i=g(Bt[t],e);return i===-1?undefined:w(Bt[t],i,1)[0]}return y(Bt[t])};e.removeHooks=function(t){if(!R(Bt,t)){return}Bt[t]=[]};e.removeAllHooks=function(){Bt=yt()};return e}var kt=wt();return kt}))})(S);const A=S.exports;const z=t=>({CUSTOM_ELEMENT_HANDLING:{tagNameCheck:e=>t&&e.startsWith("ic-")||p.includes(e),attributeNameCheck:/^(?!on).+$/i}});const E=t=>A.sanitize(t,z(true));const O=t=>A.sanitize(t,z(false));const L='html.sc-ic-menu{line-height:1.15;-webkit-text-size-adjust:100%}body.sc-ic-menu{margin:0}main.sc-ic-menu{display:block}h1.sc-ic-menu{font-size:2em;margin:0.67em 0}hr.sc-ic-menu{box-sizing:content-box;height:0;overflow:visible}pre.sc-ic-menu{font-family:monospace, monospace;font-size:1em}a.sc-ic-menu{background-color:transparent}abbr[title].sc-ic-menu{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b.sc-ic-menu,strong.sc-ic-menu{font-weight:bolder}code.sc-ic-menu,kbd.sc-ic-menu,samp.sc-ic-menu{font-family:monospace, monospace;font-size:1em}small.sc-ic-menu{font-size:80%}sub.sc-ic-menu,sup.sc-ic-menu{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub.sc-ic-menu{bottom:-0.25em}sup.sc-ic-menu{top:-0.5em}img.sc-ic-menu{border-style:none}button.sc-ic-menu,input.sc-ic-menu,optgroup.sc-ic-menu,select.sc-ic-menu,textarea.sc-ic-menu{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button.sc-ic-menu,input.sc-ic-menu{overflow:visible}button.sc-ic-menu,select.sc-ic-menu{text-transform:none}button.sc-ic-menu,[type="button"].sc-ic-menu,[type="reset"].sc-ic-menu,[type="submit"].sc-ic-menu{-webkit-appearance:button}button.sc-ic-menu::-moz-focus-inner,[type="button"].sc-ic-menu::-moz-focus-inner,[type="reset"].sc-ic-menu::-moz-focus-inner,[type="submit"].sc-ic-menu::-moz-focus-inner{border-style:none;padding:0}button.sc-ic-menu:-moz-focusring,[type="button"].sc-ic-menu:-moz-focusring,[type="reset"].sc-ic-menu:-moz-focusring,[type="submit"].sc-ic-menu:-moz-focusring{outline:1px dotted ButtonText}fieldset.sc-ic-menu{padding:0.35em 0.75em 0.625em}legend.sc-ic-menu{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress.sc-ic-menu{vertical-align:baseline}textarea.sc-ic-menu{overflow:auto}[type="checkbox"].sc-ic-menu,[type="radio"].sc-ic-menu{box-sizing:border-box;padding:0}[type="number"].sc-ic-menu::-webkit-inner-spin-button,[type="number"].sc-ic-menu::-webkit-outer-spin-button{height:auto}[type="search"].sc-ic-menu{-webkit-appearance:textfield;outline-offset:-2px}[type="search"].sc-ic-menu::-webkit-search-decoration{-webkit-appearance:none}.sc-ic-menu::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details.sc-ic-menu{display:block}summary.sc-ic-menu{display:list-item}template.sc-ic-menu{display:none}[hidden].sc-ic-menu{display:none}html.sc-ic-menu,body.sc-ic-menu,div.sc-ic-menu,span.sc-ic-menu,applet.sc-ic-menu,object.sc-ic-menu,iframe.sc-ic-menu,h1.sc-ic-menu,h2.sc-ic-menu,h3.sc-ic-menu,h4.sc-ic-menu,h5.sc-ic-menu,h6.sc-ic-menu,p.sc-ic-menu,blockquote.sc-ic-menu,pre.sc-ic-menu,a.sc-ic-menu,abbr.sc-ic-menu,acronym.sc-ic-menu,address.sc-ic-menu,big.sc-ic-menu,cite.sc-ic-menu,code.sc-ic-menu,del.sc-ic-menu,dfn.sc-ic-menu,em.sc-ic-menu,img.sc-ic-menu,ins.sc-ic-menu,kbd.sc-ic-menu,q.sc-ic-menu,s.sc-ic-menu,samp.sc-ic-menu,small.sc-ic-menu,strike.sc-ic-menu,strong.sc-ic-menu,sub.sc-ic-menu,sup.sc-ic-menu,tt.sc-ic-menu,var.sc-ic-menu,b.sc-ic-menu,u.sc-ic-menu,i.sc-ic-menu,center.sc-ic-menu,dl.sc-ic-menu,dt.sc-ic-menu,dd.sc-ic-menu,ol.sc-ic-menu,ul.sc-ic-menu,li.sc-ic-menu,fieldset.sc-ic-menu,form.sc-ic-menu,label.sc-ic-menu,legend.sc-ic-menu,table.sc-ic-menu,caption.sc-ic-menu,tbody.sc-ic-menu,tfoot.sc-ic-menu,thead.sc-ic-menu,tr.sc-ic-menu,th.sc-ic-menu,td.sc-ic-menu,article.sc-ic-menu,aside.sc-ic-menu,canvas.sc-ic-menu,details.sc-ic-menu,embed.sc-ic-menu,figure.sc-ic-menu,figcaption.sc-ic-menu,footer.sc-ic-menu,header.sc-ic-menu,hgroup.sc-ic-menu,menu.sc-ic-menu,nav.sc-ic-menu,output.sc-ic-menu,ruby.sc-ic-menu,section.sc-ic-menu,summary.sc-ic-menu,time.sc-ic-menu,mark.sc-ic-menu,audio.sc-ic-menu,video.sc-ic-menu{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}@media (prefers-reduced-motion: no-preference){.ic-menu-open.sc-ic-menu-h .menu.sc-ic-menu{transition:max-height var(--ic-transition-duration-slow)}}.sc-ic-menu-h{max-height:0;width:var(--menu-width, var(--input-width, 20rem));color:var(--menu-item-text-color, var(--ic-menu-list-option-text-color));--ic-typography-color:var(\n --menu-item-text-color,\n var(--ic-menu-list-option-text-color)\n );background-color:var(\n --menu-bg-color,\n var(--ic-menu-list-option-background-color)\n );position:relative;z-index:var(--ic-z-index-menu);box-sizing:border-box;box-shadow:var(--ic-elevation-overlay);border-radius:var(--ic-border-radius)}.ic-menu-open.sc-ic-menu-h:not(.ic-menu-no-focus):focus-within{box-shadow:var(--ic-border-focus);outline:var(--ic-hc-focus-outline)}.ic-select-select-all-focused.sc-ic-menu-h{box-shadow:var(--ic-elevation-overlay) !important}#retry-button.sc-ic-menu::part(button){height:var(--ic-space-lg)}.small.sc-ic-menu #retry-button.sc-ic-menu::part(button){height:var(--ic-space-md)}.on-dialog.sc-ic-menu-h{inset:auto !important}.menu.sc-ic-menu{text-decoration:none;list-style-type:none;border-radius:1px;background-color:var(\n --menu-bg-color,\n var(--ic-menu-list-option-background-color)\n );visibility:hidden;max-height:0;overflow-y:hidden}.menu.sc-ic-menu:has(+.option-bar).sc-ic-menu{border-radius:0 0 1px 1px}.menu-scroll.sc-ic-menu{overflow-y:auto}.menu.sc-ic-menu:focus-visible{outline:none}.ic-menu-open.sc-ic-menu-h{max-height:none;display:flex;flex-direction:column-reverse;border:var(--ic-border-width) solid\n var(--menu-border-color, var(--ic-menu-border-color));transition:box-shadow var(--ic-easing-transition-fast)}.ic-menu-open.sc-ic-menu-h .menu.sc-ic-menu{visibility:visible;max-height:calc(var(--ic-space-xl) * 10 + var(--ic-space-xxxs))}.ic-menu-open.sc-ic-menu-h .option-bar.sc-ic-menu{visibility:visible}.ic-menu-open.sc-ic-menu-h .select-all-button.sc-ic-menu{display:block}.ic-menu-full-width.sc-ic-menu-h{width:100%}.option.sc-ic-menu{padding:var(--ic-space-xs) calc(var(--ic-space-xs) - var(--ic-space-1px));cursor:pointer;display:flex;align-items:center;gap:var(--ic-space-xs)}.loading-option.sc-ic-menu p.sc-ic-menu{margin-bottom:0 !important}.option.sc-ic-menu:not(.loading-option){justify-content:space-between}.ic-menu-small.sc-ic-menu-h .option.sc-ic-menu{padding:var(--ic-space-xxs) calc(var(--ic-space-xs) - var(--ic-space-1px))}.ic-menu-large.sc-ic-menu-h .option.sc-ic-menu{padding:var(--ic-space-sm) calc(var(--ic-space-xs) - var(--ic-space-1px))}.option.sc-ic-menu:last-child{border-radius:0 0 1px 1px}.sc-ic-menu:not(.menu:has(+.option-bar)).sc-ic-menu .option.sc-ic-menu:first-child{border-radius:1px 1px 0 0}.option.sc-ic-menu:not(.disabled-option):hover{background-color:var(--ic-menu-list-option-hover-background-color)}.option.sc-ic-menu:not(.disabled-option):active{background-color:var(--ic-menu-list-option-pressed-background-color)}.option.sc-ic-menu:focus-visible{outline:var(--ic-hc-focus-outline)}.option.sc-ic-menu:not(.disabled-option) .option-description.sc-ic-menu{--ic-typography-color:var(\n --menu-item-desc-text-color,\n var(--ic-menu-list-option-description-text-color)\n )}.option.sc-ic-menu .option-label.sc-ic-menu{display:flex;flex-direction:row;align-items:flex-start;gap:var(--ic-space-xs)}.option.sc-ic-menu .option-label.sc-ic-menu ic-typography.sc-ic-menu{max-width:100%;word-wrap:break-word}.option.sc-ic-menu .option-element.sc-ic-menu{margin-top:var(--ic-space-xxs)}.option.sc-ic-menu .option-icon.sc-ic-menu{height:var(--ic-space-lg);width:var(--ic-space-lg);min-width:var(--ic-space-lg)}.option.sc-ic-menu .option-icon.sc-ic-menu>svg.sc-ic-menu{height:100%;width:100%}.option-label.sc-ic-menu:has(.option-icon)+.option-description.sc-ic-menu{margin-left:calc(var(--ic-space-lg) + var(--ic-space-xs))}.option-text-container.sc-ic-menu{pointer-events:none;width:100%}.option-text-container.show-check-icon.sc-ic-menu{flex-grow:1}.option.loading-option.sc-ic-menu .option-text-container.sc-ic-menu{margin-left:calc(var(--ic-space-xs) + var(--ic-space-xxxs));color:var(--ic-menu-loading-list-option-text-color);--ic-typography-color:var(--ic-menu-loading-list-option-text-color)}.error-icon-svg.sc-ic-menu{height:var(--ic-space-md);width:var(--ic-space-md);fill:var(--ic-atoms-status-icon-error);align-self:center;display:flex;margin-right:calc(var(--ic-space-xxs) * 1.2)}.loading-error-info.sc-ic-menu{display:flex}.check-icon.sc-ic-menu{height:var(--ic-space-lg);min-width:var(--ic-space-lg);width:var(--ic-space-lg);pointer-events:none}.focused-option.sc-ic-menu .check-icon.sc-ic-menu *.sc-ic-menu{fill:currentcolor}.sc-ic-menu:first-child>.option-group-title.sc-ic-menu{padding:var(--ic-space-xs) calc(var(--ic-space-xs) - var(--ic-space-1px))\n var(--ic-space-xs)}.option-group-title.sc-ic-menu{padding:var(--ic-space-lg) calc(var(--ic-space-xs) - var(--ic-space-1px))\n var(--ic-space-xs);--ic-typography-color:var(--ic-menu-option-group-label-text-color)}.ic-menu-small.sc-ic-menu-h .option-group-title.sc-ic-menu{padding:var(--ic-space-sm) calc(var(--ic-space-xs) - var(--ic-space-1px))\n var(--ic-space-xxs)}.last-recommended-option.sc-ic-menu{border-bottom:var(--ic-menu-last-recommended-option-border)}.disabled-option.sc-ic-menu{color:var(--ic-atoms-list-option-text-disabled-light);--ic-typography-color:var(--ic-atoms-list-option-text-disabled-light);cursor:default;pointer-events:none}.focus-border.sc-ic-menu{border-radius:var(--ic-border-radius);padding:var(--ic-space-xxs);border:var(--ic-space-xxxs) dashed transparent;border-color:var(--ic-popover-menu-border);background-color:var(--ic-color-focus-inner) !important;--icon-height:auto}.focus-disabled.sc-ic-menu{background-color:var(--ic-color-focus-inner) !important;padding:calc(var(--ic-space-xs) - var(--ic-space-xxxs) - var(--ic-space-xxs))\n calc(\n var(--ic-space-xs) - var(--ic-space-1px) - var(--ic-space-xxxs) -\n var(--ic-space-xxs)\n )}.focused-option.sc-ic-menu,.focused-option.sc-ic-menu .option-description.sc-ic-menu{background-color:var(--ic-color-focus-inner) !important;color:var(--ic-atoms-list-option-text-focused-light) !important;--ic-typography-color:var(\n --ic-atoms-list-option-text-focused-light\n ) !important}.no-results.sc-ic-menu-h li.sc-ic-menu{cursor:no-drop}.no-results.sc-ic-menu-h li.sc-ic-menu:hover{background-color:transparent}.option-bar.sc-ic-menu{padding:var(--ic-space-xxs) var(--ic-space-xs);display:flex;align-items:center;justify-content:space-between;background-color:var(--ic-menu-option-bar-background-color);visibility:hidden;border-bottom:var(--ic-border-width) solid\n var(--ic-menu-option-bar-divider-color);border-radius:1px 1px 0 0}.option-bar.sc-ic-menu p.sc-ic-menu{margin-bottom:0 !important}.ic-menu-large.sc-ic-menu-h .option-bar.sc-ic-menu{padding:var(--ic-space-xs)}.select-all-button.sc-ic-menu{display:none}.select-all-button.sc-ic-menu:focus{z-index:calc(var(--ic-z-index-menu) + 1)}@media (forced-colors: active){.focused-option.sc-ic-menu{outline:none;border:0.125rem solid transparent}.disabled-option.sc-ic-menu{color:GrayText;--ic-typography-color:GrayText}}@media screen AND (max-width: 22rem){.sc-ic-menu-h{max-width:var(--menu-width, var(--input-width, 20rem));width:100%}}@media (prefers-reduced-motion: reduce){.ic-menu-open.sc-ic-menu-h{transition:none}}';const D=L;const I=class{constructor(i){t(this,i);this.icClear=o(this,"icClear",7);this.menuKeyPress=o(this,"menuKeyPress",7);this.menuOptionId=o(this,"menuOptionId",7);this.menuOptionSelect=o(this,"menuOptionSelect",7);this.menuOptionSelectAll=o(this,"menuOptionSelectAll",7);this.menuStateChange=o(this,"menuStateChange",7);this.retryButtonClicked=o(this,"retryButtonClicked",7);this.timeoutBlur=o(this,"timeoutBlur",7);this.ungroupedOptionsSet=o(this,"ungroupedOptionsSet",7);this.ACTIVE_DESCENDANT="aria-activedescendant";this.CLEAR_BUTTON_ID="clear-button";this.SEARCH_BAR_TAG="IC-SEARCH-BAR";this.disabledOptionSelected=false;this.hasPreviouslyBlurred=false;this.hasTimedOut=false;this.isLoading=false;this.lastOptionSelected=null;this.lastOptionFocused=null;this.multiOptionClicked=null;this.preventClickOpen=false;this.preventMenuFocus=false;this.shiftPressed=false;this.ungroupedOptions=[];this.focusFromSearchKeypress=false;this.initialOptionsListRender=false;this.keyboardNav=false;this.preventIncorrectTabOrder=false;this.popperProps={};this.activationType="automatic";this.autofocusOnSelected=true;this.closeOnSelect=true;this.fullWidth=false;this.labelField="label";this.multiSelect=false;this.searchableSelect=false;this.searchBar=false;this.searchMode="navigation";this.selectOnEnter=false;this.size="medium";this.valueField="value";this.allowMenuFocus=true;this.emitOptionId=t=>{let e;if(t>=0&&t<this.ungroupedOptions.length){e=this.ungroupedOptions[t]}else if(this.ungroupedOptions.length>0){e=t<0?this.ungroupedOptions[this.ungroupedOptions.length-1]:this.ungroupedOptions[0]}if(e){this.menuOptionId.emit({optionId:this.getOptionId(e[this.valueField])})}else{this.menuOptionId.emit({optionId:undefined})}};this.handleClearListener=()=>{this.optionHighlighted=""};this.handleSubmitSearch=()=>{const t=this.options.findIndex((t=>t[this.valueField]===this.optionHighlighted));this.setInputValue(t)};this.handleMenuChange=(t,e)=>{var i;this.menuStateChange.emit({open:t,focusInput:e});if(!t){if(e!==false){if(this.allowMenuFocus){(i=this.inputEl)===null||i===void 0?void 0:i.focus()}this.preventClickOpen=false}if(this.multiSelect){this.optionHighlighted=undefined;this.multiOptionClicked=null}}};this.setNextOptionValue=t=>{const e=t%this.ungroupedOptions.length;const i=this.ungroupedOptions[e];this.setHighlightedOption(e);if(i.disabled){this.menuOptionId.emit({optionId:this.getOptionId(i[this.valueField])})}else{this.menuOptionSelect.emit({value:i[this.valueField],optionId:this.getOptionId(i[this.valueField])})}};this.setPreviousOptionValue=t=>{const e=t%this.ungroupedOptions.length;const i=this.ungroupedOptions[e];this.setHighlightedOption(e);if(i.disabled){this.menuOptionId.emit({optionId:this.getOptionId(i[this.valueField])})}else{this.menuOptionSelect.emit({value:i[this.valueField],optionId:this.getOptionId(i[this.valueField])})}};this.arrowBehaviour=t=>{t.preventDefault();this.handleMenuChange(true)};this.getMenuOptions=()=>this.searchBar?this.options:this.ungroupedOptions;this.setHighlightedOption=t=>{const e=this.getMenuOptions();e[t]&&!e[t].timedOut&&(this.optionHighlighted=e[t][this.valueField]||undefined)};this.autoSetInputValueKeyboardOpen=t=>{const e=this.ungroupedOptions.findIndex((t=>t[this.valueField]===this.value));this.keyboardNav=false;switch(t.key){case"ArrowDown":{this.keyboardNav=true;this.arrowBehaviour(t);const i=e<this.ungroupedOptions.length-1?e+1:0;this.setNextOptionValue(i);this.emitOptionId(i);break}case"ArrowUp":{this.keyboardNav=true;this.arrowBehaviour(t);const i=e>0?e-1:this.ungroupedOptions.length-1;this.setPreviousOptionValue(i);this.emitOptionId(i);break}case"Home":{this.keyboardNav=true;t.preventDefault();this.arrowBehaviour(t);this.setNextOptionValue(-1);this.emitOptionId(0);break}case"End":{this.keyboardNav=true;t.preventDefault();this.arrowBehaviour(t);this.setPreviousOptionValue(this.ungroupedOptions.length);this.emitOptionId(this.ungroupedOptions.length-1);break}case" ":case"Enter":if(t.target.id!==this.CLEAR_BUTTON_ID){this.handleMenuChange(true)}break}};this.selectHighlightedOption=(t,e)=>{if(!this.isLoading&&!this.hasTimedOut){this.keyboardNav=true}const i=this.searchBar||this.searchableSelect||this.open;if(i){if(e>=0){if(t[e]!==undefined){if(this.searchBar&&t[e].disabled===true){this.disabledOptionSelected=true;this.optionHighlighted=undefined}else{this.setInputValue(e)}}}else{this.setInputValue(e)}}else{this.handleMenuChange(true)}};this.isOptionSelected=t=>{const e=this.getMenuOptions();return this.value?this.value.includes(e[t][this.valueField]):false};this.deselectSelectedOptions=t=>{const e=this.getMenuOptions();if(this.value){const i=this.value.map((t=>e.findIndex((e=>e[this.valueField]===t))));i.forEach((e=>!t.includes(e)&&this.setInputValue(e)))}};this.manualSetInputValueKeyboardOpen=t=>{const e=this.getMenuOptions();const i=t.shiftKey||t.metaKey||t.ctrlKey;const n=this.getOptionHighlightedIndex();const o=e.findIndex((t=>t[this.valueField]===this.multiOptionClicked));const s=t=>{var e;return(e=Array.from(this.host.querySelectorAll("li"))[t])===null||e===void 0?void 0:e.id};if(t.key===" "&&this.multiSelect){this.handleOptionSelect(t,n)}else{switch(t.key){case"ArrowDown":this.keyboardNav=true;this.arrowBehaviour(t);if(this.multiOptionClicked){this.setHighlightedOption(o);this.multiOptionClicked=null}else{this.handleSingleShiftSelect(t,n,e);if(n<e.length-1){this.setHighlightedOption(n+1);this.menuOptionId.emit({optionId:s(n+1)});this.handleSingleShiftSelect(t,n+1,e)}else{this.setHighlightedOption(0);this.menuOptionId.emit({optionId:s(0)});this.handleSingleShiftSelect(t,0,e)}if(this.multiSelect&&this.shiftPressed){this.deselectSelectedOptions([n,this.getOptionHighlightedIndex()]);this.shiftPressed=false}}this.lastOptionFocused=this.getOptionHighlightedIndex();this.preventIncorrectTabOrder=false;this.focusFromSearchKeypress=false;break;case"ArrowUp":this.keyboardNav=true;this.arrowBehaviour(t);if(this.multiOptionClicked){this.setHighlightedOption(o);this.multiOptionClicked=null}else{this.handleSingleShiftSelect(t,n,e);if(n<=0||n>e.length+1){this.setHighlightedOption(e.length-1);this.menuOptionId.emit({optionId:s(e.length-1)});this.handleSingleShiftSelect(t,e.length-1,e)}else{this.setHighlightedOption(n-1);this.menuOptionId.emit({optionId:s(n-1)});this.handleSingleShiftSelect(t,n-1,e)}if(this.multiSelect&&this.shiftPressed){this.deselectSelectedOptions([n,this.getOptionHighlightedIndex()]);this.shiftPressed=false}}this.lastOptionFocused=this.getOptionHighlightedIndex();this.preventIncorrectTabOrder=false;this.focusFromSearchKeypress=false;break;case"Home":{const e=0;this.keyboardNav=true;t.preventDefault();this.arrowBehaviour(t);this.setHighlightedOption(e);this.menuOptionId.emit({optionId:s(e)});if(t.shiftKey&&t.ctrlKey){this.handleMultipleShiftSelect(e)}this.lastOptionFocused=e;this.lastOptionSelected=e;break}case"End":{const i=e.length-1;this.keyboardNav=true;t.preventDefault();this.arrowBehaviour(t);this.setHighlightedOption(i);this.menuOptionId.emit({optionId:s(i)});if(t.shiftKey&&t.ctrlKey){this.handleMultipleShiftSelect(i)}this.lastOptionFocused=i;this.lastOptionSelected=i;break}case" ":if(!i){this.keyboardNav=false}if(this.searchBar||this.searchableSelect){break}else{if(t.target.id!==this.CLEAR_BUTTON_ID){this.handleMenuChange(true)}}break;case"Enter":t.preventDefault();if(!i){this.keyboardNav=false}this.handleOptionSelect(t,n);break;case"Escape":if(this.open){t.stopImmediatePropagation()}this.handleMenuChange(false,!this.allowMenuFocus);this.menuOptionId.emit({optionId:undefined});break;case"a":if(this.multiSelect&&(u()&&t.metaKey||!u()&&t.ctrlKey)){this.emitSelectAllEvents();this.lastOptionFocused=null;this.lastOptionSelected=null}break;case"Shift":case"Tab":if(t.key==="Shift"){this.shiftPressed=true}if(this.searchBar){this.keyboardNav=true}if(this.multiSelect){if(this.open&&!t.shiftKey&&this.selectAllButton){t.preventDefault();this.selectAllButton.focus();this.preventMenuFocus=true;this.preventClickOpen=true;this.optionHighlighted=undefined}}else{this.preventIncorrectTabOrder=true}break;default:if(!i){this.keyboardNav=false}this.focusOnSearchOrSelectInput(e,n)}}};this.setInputValue=t=>{const e=this.getMenuOptions();if(e[t]!==undefined&&!e[t].disabled){this.menuOptionSelect.emit({value:e[t][this.valueField]})}if(this.closeOnSelect){this.optionHighlighted=undefined;this.menuOptionId.emit({optionId:undefined})}if(this.closeOnSelect){if(!this.hasTimedOut){this.handleMenuChange(false)}else{this.parentEl.setFocus()}}};this.handleOptionClick=t=>{const{value:e,label:i}=t.target.dataset;if(this.multiSelect){const i=this.getMenuOptions();const n=i.findIndex((t=>t[this.valueField]===e));this.handleOptionSelect(t,n,true);this.multiOptionClicked=e||null}else{this.menuOptionSelect.emit({value:e,label:i});this.handleMenuChange(false)}this.optionHighlighted=undefined};this.handleRetry=()=>{this.retryButtonClicked.emit({value:this.value})};this.handleRetryKeyDown=t=>{if(t.key==="Enter"||t.key===" "){t.preventDefault();this.retryButtonClicked.emit({value:this.value,keyPressed:t.key})}};this.handleBlur=t=>{var e,i,n,o;if(t.relatedTarget!==this.inputEl){if(t.relatedTarget===this.selectAllButton){(e=this.menu)===null||e===void 0?void 0:e.removeAttribute(this.ACTIVE_DESCENDANT)}if(!(((i=this.menu)===null||i===void 0?void 0:i.contains(t.relatedTarget))||t.relatedTarget===this.selectAllButton)){this.handleMenuChange(false,this.hasPreviouslyBlurred);(n=this.menu)===null||n===void 0?void 0:n.removeAttribute(this.ACTIVE_DESCENDANT);this.lastOptionFocused=null;this.lastOptionSelected=null}}else{this.handleMenuChange(false);this.preventClickOpen=true;(o=this.menu)===null||o===void 0?void 0:o.removeAttribute(this.ACTIVE_DESCENDANT);this.lastOptionFocused=null;this.lastOptionSelected=null}if(!this.searchBar)this.hasPreviouslyBlurred=!!t.relatedTarget};this.handleMouseDown=t=>{t.preventDefault()};this.handleMenuKeyUp=t=>{if(t.key==="Tab"&&t.shiftKey){this.preventClickOpen=false}if(t.key==="Enter"&&this.disabledOptionSelected){this.disabledOptionSelected=false;t.stopImmediatePropagation()}if(t.key==="Shift"){this.shiftPressed=false}};this.handleSelectAllClick=()=>{var t;this.keyboardNav=false;if(this.allowMenuFocus){(t=this.menu)===null||t===void 0?void 0:t.focus()}this.emitSelectAllEvents();this.lastOptionFocused=null;this.lastOptionSelected=null};this.handleSelectAllBlur=t=>{var e,i,n;this.host.classList.remove("ic-select-select-all-focused");const o=t.relatedTarget;if(!((e=this.menu)===null||e===void 0?void 0:e.contains(o))&&!((n=(i=this.parentEl)===null||i===void 0?void 0:i.shadowRoot)===null||n===void 0?void 0:n.contains(o))){this.handleMenuChange(false,false)}};this.handleSelectAllFocus=()=>{this.host.classList.add("ic-select-select-all-focused");this.lastOptionFocused=null;this.lastOptionSelected=null};this.handleSelectAllMouseDown=t=>{t.preventDefault()};this.handleSingleShiftSelect=(t,e,i)=>{if(this.multiSelect&&t.shiftKey&&!this.isOptionSelected(e)){this.selectHighlightedOption(i,e);this.lastOptionSelected=e}};this.handleMultipleShiftSelect=(t,e=false,i=null)=>{this.shiftPressed=false;const n=i===null?this.getFirstOptionInSelection(e):i;if(n!==null){const e=[];if(n<t){for(let i=n;i<t+1;i++){e.push(i)}}else{for(let i=n;i>t-1;i--){e.push(i)}}e.forEach((t=>!this.isOptionSelected(t)&&this.setInputValue(t)));this.deselectSelectedOptions(e)}};this.handleOptionSelect=(t,e,i=false)=>{const n=this.getMenuOptions();const o=this.getFirstOptionInSelection(i);if(t.shiftKey&&o!==null){this.handleMultipleShiftSelect(e,i,o)}else{this.selectHighlightedOption(n,e)}this.lastOptionFocused=e;this.lastOptionSelected=e};this.getFirstOptionInSelection=t=>t&&this.lastOptionFocused!==null?this.lastOptionFocused:this.lastOptionSelected!==null?this.lastOptionSelected:null;this.emitSelectAllEvents=()=>{var t,e;const i=this.ungroupedOptions.filter((t=>!t.disabled)).length;this.menuOptionSelectAll.emit({select:!this.value||!(((t=this.value)===null||t===void 0?void 0:t.length)===i)});if(((e=this.value)===null||e===void 0?void 0:e.length)===i){this.icClear.emit()}};this.emitMenuKeyPress=(t,e)=>{this.menuKeyPress.emit({isNavKey:t,key:e})};this.autoSetValueOnMenuKeyDown=t=>{var e;t.cancelBubble=true;const i=this.getOptionHighlightedIndex();const n=i>=0?i:this.ungroupedOptions.findIndex((t=>t[this.valueField]===this.value));const o=!!this.inputEl&&this.inputEl.tagName==="INPUT";this.keyboardNav=false;switch(t.key){case" ":t.preventDefault();break;case"ArrowUp":if(!this.hasTimedOut){t.preventDefault();const e=n>0?n-1:this.ungroupedOptions.length-1;this.setPreviousOptionValue(e);this.emitOptionId(e);this.keyboardNav=true}break;case"ArrowDown":if(!this.hasTimedOut){t.preventDefault();const e=n<this.ungroupedOptions.length-1?n+1:0;this.setNextOptionValue(e);this.emitOptionId(e);this.keyboardNav=true}break;case"Home":this.menuOptionSelect.emit({value:this.ungroupedOptions[0][this.valueField]});this.emitOptionId(0);this.keyboardNav=true;break;case"End":this.menuOptionSelect.emit({value:this.ungroupedOptions[this.ungroupedOptions.length-1][this.valueField]});this.emitOptionId(this.ungroupedOptions.length-1);this.keyboardNav=true;break;case"Enter":!this.hasTimedOut&&this.handleMenuChange(false);break;case"Escape":this.handleMenuChange(false,!this.allowMenuFocus);break;case"Backspace":break;case"Shift":break;default:if(o&&t.key!=="Tab"&&!this.hasTimedOut){(e=this.inputEl)===null||e===void 0?void 0:e.focus()}if(t.key.length===1){this.keyboardNav=true}break}this.emitMenuKeyPress(this.keyboardNav,t.key)};this.getOptionId=t=>`${this.menuId}-${t}`;this.getOptionAriaLabel=(t,e)=>{let i=t[this.labelField];if(t.description){i=`${i}, ${t.description}`}if(t.element){i=`${i}, ${t.element.ariaLabel}`}if(e){return`${i}, ${e[this.labelField]} group`}else{return i}};this.getSortedOptions=t=>{let e=[];if(t.sort){e=t.sort(((t,e)=>t.recommended&&!e.recommended?-1:0))}return e};this.getOptionHighlightedIndex=()=>{const t=this.getMenuOptions();return t.findIndex((t=>t[this.valueField]===this.optionHighlighted))};this.isManualMode=this.activationType==="manual";this.scrollToSelected=()=>{var t;const e=this.menu;const i=this.selectOnEnter||this.searchableSelect||this.multiSelect?this.host.querySelector(`li[data-value="${this.optionHighlighted}"]`):e.querySelector(".option[aria-selected='true']");if(i){const n=e.getBoundingClientRect();const o=i.getBoundingClientRect();if(o.top<n.top){e.scrollTop-=n.top-o.top}else if(o.bottom>n.bottom){e.scrollTop+=o.bottom-n.bottom}(t=this.menu)===null||t===void 0?void 0:t.setAttribute(this.ACTIVE_DESCENDANT,i.id);if(this.allowMenuFocus){i.focus()}}};this.loadUngroupedOptions=()=>{if(this.options.length>0&&this.options.map){this.options.map((t=>{if(t.children){t.children.map((t=>!t.disabled&&this.ungroupedOptions.push(t)))}else{this.ungroupedOptions.push(t)}}))}this.ungroupedOptions=this.getSortedOptions(this.ungroupedOptions);this.ungroupedOptionsSet.emit({options:this.ungroupedOptions})};this.setMenuScrollbar=()=>{var t;let e=0;this.host.querySelectorAll(".option, .option-group-title").forEach((t=>e+=t.clientHeight));if(e>=320){(t=this.menu)===null||t===void 0?void 0:t.classList.add("menu-scroll")}};this.handleTimeoutBlur=t=>{this.timeoutBlur.emit({ev:t})};this.optionContent=(t,i)=>{var n;const o=!!t[this.valueField]&&!!this.value&&i&&((n=this.parentEl)===null||n===void 0?void 0:n.tagName)!==this.SEARCH_BAR_TAG;return e(s,null,t.loading&&e("ic-loading-indicator",{size:"icon"}),e("div",{class:{"option-text-container":true,"show-check-icon":o,"focus-border":(this.keyboardNav||this.initialOptionsListRender)&&t[this.valueField]===this.optionHighlighted&&!!t.disabled}},(t.icon||!t.hideLabel)&&e("div",{class:"option-label"},t.icon&&e("div",{class:"option-icon",innerHTML:O(t.icon),"aria-hidden":"true"}),!t.hideLabel&&e("ic-typography",{variant:"body","aria-hidden":"true"},t[this.labelField])),t.description&&e("ic-typography",{id:`${this.getOptionId(t[this.valueField])}-description`,class:"option-description",variant:"caption","aria-hidden":"true"},e("p",null,t.description)),t.element&&e("div",{class:{"option-element":t.icon||!t.hideLabel||t.description},innerHTML:E(t.element.component),"aria-hidden":"true"})),o&&e("span",{class:"check-icon",innerHTML:m,"aria-hidden":"true"}))};this.displayOption=(t,i,n,o)=>{var c;const{open:r,keyboardNav:a,isManualMode:l,initialOptionsListRender:u,optionHighlighted:h,options:f}=this;return e("li",Object.assign({id:this.getOptionId(t[this.valueField]),class:{option:true,"focused-option":l?(a||u)&&t[this.valueField]===h&&!t.disabled:a&&t[this.valueField]===h&&!t.disabled,"focus-disabled":l?(a||u)&&t[this.valueField]===h&&!!t.disabled:a&&t[this.valueField]===h&&!!t.disabled,"last-recommended-option":!!(t.recommended&&f[n+1]&&!f[n+1].recommended),"disabled-option":!!t.disabled,"loading-option":!!t.loading,timeout:!!t.timedOut},role:"option",tabindex:!this.allowMenuFocus?"-1":r&&(i||t[this.valueField]===h)&&a?"0":"-1","aria-label":this.getOptionAriaLabel(t,o),"aria-selected":i?"true":"false","aria-disabled":t.disabled?"true":"false",onClick:!t.timedOut&&!t.loading?this.handleOptionClick:undefined,onBlur:this.handleBlur,onMouseDown:this.handleMouseDown,"data-value":t[this.valueField],"data-label":t[this.labelField]},(c=t.htmlProps)!==null&&c!==void 0?c:{}),t.timedOut?e(s,null,e("div",{class:"loading-error-info"},e("svg",{class:"error-icon-svg",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"#000000"},e("title",null,"Error"),e("g",null,e("path",{d:"M8.77 3L3.5 8.27V15.73L8.77 21H16.23L21.5 15.73V8.27L16.23 3M8.91 7L12.5 10.59L16.09 7L17.5 8.41L13.91 12L17.5 15.59L16.09 17L12.5 13.41L8.91 17L7.5 15.59L11.09 12L7.5 8.41"}))),e("ic-typography",{variant:"label"},t[this.labelField])),e("ic-button",{size:"small",variant:"tertiary",onClick:this.handleRetry,onKeyDown:this.handleRetryKeyDown,onBlur:this.handleTimeoutBlur,id:"retry-button"},"Retry")):this.optionContent(t,i))}}watchOpenHandler(){if(!this.open&&this.popperInstance){this.popperInstance.destroy();this.popperInstance=null}}watchOptionsHandler(t){this.hasTimedOut=t.some((t=>t.timedOut));this.isLoading=t.some((t=>t.loading));this.ungroupedOptions=[];this.loadUngroupedOptions()}connectedCallback(){if(this.searchBar){if(this.searchMode==="navigation")this.setHighlightedOption(0);this.initialOptionsListRender=true}}disconnectedCallback(){var t,e,i;(t=this.popperInstance)===null||t===void 0?void 0:t.destroy();(e=this.parentEl)===null||e===void 0?void 0:e.removeEventListener("icClear",this.handleClearListener);(i=this.parentEl)===null||i===void 0?void 0:i.removeEventListener("icSubmitSearch",this.handleSubmitSearch)}componentWillLoad(){var t,e,i,n;this.loadUngroupedOptions();(t=this.parentEl)===null||t===void 0?void 0:t.addEventListener("icClear",this.handleClearListener);(e=this.parentEl)===null||e===void 0?void 0:e.addEventListener("icSubmitSearch",this.handleSubmitSearch);this.hasTimedOut=(i=this.options)===null||i===void 0?void 0:i.some((t=>t.timedOut));this.isLoading=(n=this.options)===null||n===void 0?void 0:n.some((t=>t.loading))}componentDidLoad(){if(this.searchBar&&this.parentEl.disableAutoFiltering){this.focusFromSearchKeypress=true}h([{prop:this.open,propName:"open"},{prop:this.options,propName:"options"},{prop:this.menuId,propName:"menu-id"},{prop:this.inputLabel,propName:"input-label"}],"Menu")}componentDidUpdate(){const t=this.options.some((t=>t[this.valueField]===this.value));if(this.menu&&this.open&&this.options.length!==0&&!this.preventMenuFocus){if(this.value&&this.keyboardNav&&t&&this.autofocusOnSelected&&!this.searchableSelect){this.scrollToSelected()}else if(!!this.optionHighlighted&&!this.focusFromSearchKeypress&&!this.preventIncorrectTabOrder){const t=this.host.querySelector(`li[data-value="${this.optionHighlighted}"]`);if(t){this.menu.setAttribute(this.ACTIVE_DESCENDANT,t.id);if(this.allowMenuFocus){t.focus()}}}else if(this.inputEl&&this.inputEl.tagName!=="INPUT"&&this.allowMenuFocus){this.menu.focus()}}if(this.menu&&this.open){this.scrollToSelected()}this.preventMenuFocus=false}componentDidRender(){if(this.open&&!this.popperInstance&&this.anchorEl){this.initPopperJs(this.anchorEl)}if(this.open&&!!this.options.length){this.setMenuScrollbar()}}async handleClickOpen(){if(!this.preventClickOpen){this.menuStateChange.emit({open:!this.open});this.keyboardNav=false}this.preventClickOpen=false}async handleKeyboardOpen(t){if(this.activationType==="automatic"){this.autoSetInputValueKeyboardOpen(t)}else{this.manualSetInputValueKeyboardOpen(t)}}async handleMenuKeyDown(t){if(this.activationType==="automatic"){this.autoSetValueOnMenuKeyDown(t)}else if(this.activationType==="manual"&&!this.searchBar){this.manualSetInputValueKeyboardOpen(t)}}async handleSetFirstOption(){this.setHighlightedOption(0)}async initPopperJs(t){this.popperInstance=b(t,this.host,Object.assign({placement:"bottom-start",modifiers:[{name:"offset",options:{offset:[0,7]}},{name:"flip",options:{fallbackPlacements:["top-start"],rootBoundary:"viewport"}}]},this.popperProps))}async setExternalPopperProps(t){this.popperProps=t}focusOnSearchOrSelectInput(t,e){if(!t[e])return;if(this.searchBar){this.parentEl.setFocus();if(this.searchMode==="navigation")this.setHighlightedOption(0)}if(this.searchableSelect){this.parentEl.setFocus()}this.focusFromSearchKeypress=true}render(){const{inputLabel:t,options:n,menuId:o,value:s,fullWidth:c,hasTimedOut:r,isLoading:a,size:l,open:u,inputEl:h,keyboardNav:d,parentEl:p,SEARCH_BAR_TAG:m,multiSelect:b}=this;const v=this.ungroupedOptions.filter((t=>!t.disabled)).length;const g=`${(s===null||s===void 0?void 0:s.length)===v?"Clear":"Select"} all`;const y=this.host.classList.contains("no-results");return e(i,{key:"f2126f99757d13606827ea1eac7c08b023b97bae",class:{"ic-menu-full-width":!!c,"ic-menu-no-focus":(h===null||h===void 0?void 0:h.tagName)==="INPUT"&&(p===null||p===void 0?void 0:p.tagName)!==m||r||a,[`ic-menu-${l}`]:true,"ic-menu-open":u&&n.length!==0,"ic-menu-multiple":b}},n.length!==0&&e("ul",{key:"9b41a2c0ab9d6b08dca829db341614b248675050",id:o,class:"menu",role:"listbox","aria-label":`${t} pop-up`,"aria-multiselectable":b?"true":"false","aria-activedescendant":this.optionHighlighted?this.getOptionId(this.optionHighlighted):undefined,tabindex:!this.allowMenuFocus?"-1":u&&!d&&((h===null||h===void 0?void 0:h.tagName)!=="INPUT"||(p===null||p===void 0?void 0:p.tagName)===m)?"0":"-1",ref:t=>this.menu=t,onKeyDown:this.handleMenuKeyDown,onKeyUp:this.handleMenuKeyUp,onBlur:this.handleBlur},this.getSortedOptions(n).map(((t,i)=>{if(t.children){if(t.children.length>0){return e("div",null,e("ic-typography",{class:"option-group-title",role:"presentation",variant:"subtitle-small"},e("p",null,t[this.labelField])),t.children.map((e=>e[this.labelField]&&this.displayOption(e,b?s===null||s===void 0?void 0:s.includes(e[this.valueField]):e[this.valueField]===s,i,t))))}else{return null}}else{return t[this.labelField]&&this.displayOption(t,b?s===null||s===void 0?void 0:s.includes(t[this.valueField]):t[this.valueField]===s,i)}}))),n.length!==0&&b&&!a&&!r&&!y&&e("div",{key:"7440008eccba1fc099d09ae3916e0d186686d59e",class:"option-bar"},e("ic-typography",{key:"802bd46a5d028a541060eb4cc57c2c4607cb1b86"},e("p",{key:"17a482e5bbff099b44550f9800980a649a319358"},`${s?s.length:0}/${f(this.options)} selected`)),e("ic-button",{key:"5aa400fd2be98bc038400b699c33bd2b1814cb5d",class:"select-all-button","aria-label":`${g} options for ${t}`,ref:t=>this.selectAllButton=t,variant:"tertiary",onClick:this.handleSelectAllClick,onMouseDown:this.handleSelectAllMouseDown,onBlur:this.handleSelectAllBlur,onFocus:this.handleSelectAllFocus,size:l==="small"?"small":"medium"},g)))}get host(){return n(this)}static get watchers(){return{open:["watchOpenHandler"],options:["watchOptionsHandler"]}}};I.style=D;export{y as ic_input_component_container,k as ic_input_container,I as ic_menu};
|
|
3
|
+
//# sourceMappingURL=p-e5178830.entry.js.map
|