UNPKG

@limetech/lime-elements

Version:
112 lines • 40.2 kB
import{r as i,c as t,h as e,g as o}from"./p-288f0842.js";import{d as n}from"./p-c70b1ea3.js";import{c as a}from"./p-ad52787a.js";import{_ as d,a as c,M as r,c as l,b as s,m,d as g}from"./p-9f722992.js";import{M as h}from"./p-5a478c15.js";import{A as u}from"./p-48105d44.js";import{i as f}from"./p-0cc45207.js";import"./p-394c3702.js";import"./p-4f8562ee.js";import"./p-6f46165b.js";import"./p-c93050d6.js";import"./p-858c6b82.js";import"./p-504ee819.js";import"./p-23071d2f.js";import"./p-9bdd72e2.js";import"./p-0b1af919.js";import"./p-87a34aa6.js"; /** * @license * Copyright 2016 Google Inc. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. */function p(i,t,e){return t(i,{initialFocusEl:e})}function _(i){return i?i.scrollHeight>i.offsetHeight:false}function x(i){return i?i.scrollTop===0:false}function b(i){return i?Math.ceil(i.scrollHeight-i.scrollTop)===i.clientHeight:false}function v(i){var t=new Set;[].forEach.call(i,(function(i){return t.add(i.offsetTop)}));return t.size>1} /** * @license * Copyright 2020 Google Inc. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. */var y="mdc-dom-focus-sentinel";var w=function(){function i(i,t){if(t===void 0){t={}}this.root=i;this.options=t;this.elFocusedBeforeTrapFocus=null}i.prototype.trapFocus=function(){var i=this.getFocusableElements(this.root);if(i.length===0){throw new Error("FocusTrap: Element must have at least one focusable child.")}this.elFocusedBeforeTrapFocus=document.activeElement instanceof HTMLElement?document.activeElement:null;this.wrapTabFocus(this.root);if(!this.options.skipInitialFocus){this.focusInitialElement(i,this.options.initialFocusEl)}};i.prototype.releaseFocus=function(){[].slice.call(this.root.querySelectorAll("."+y)).forEach((function(i){i.parentElement.removeChild(i)}));if(!this.options.skipRestoreFocus&&this.elFocusedBeforeTrapFocus){this.elFocusedBeforeTrapFocus.focus()}};i.prototype.wrapTabFocus=function(i){var t=this;var e=this.createSentinel();var o=this.createSentinel();e.addEventListener("focus",(function(){var e=t.getFocusableElements(i);if(e.length>0){e[e.length-1].focus()}}));o.addEventListener("focus",(function(){var e=t.getFocusableElements(i);if(e.length>0){e[0].focus()}}));i.insertBefore(e,i.children[0]);i.appendChild(o)};i.prototype.focusInitialElement=function(i,t){var e=0;if(t){e=Math.max(i.indexOf(t),0)}i[e].focus()};i.prototype.getFocusableElements=function(i){var t=[].slice.call(i.querySelectorAll("[autofocus], [tabindex], a, input, textarea, select, button"));return t.filter((function(i){var t=i.getAttribute("aria-disabled")==="true"||i.getAttribute("disabled")!=null||i.getAttribute("hidden")!=null||i.getAttribute("aria-hidden")==="true";var e=i.tabIndex>=0&&i.getBoundingClientRect().width>0&&!i.classList.contains(y)&&!t;var o=false;if(e){var n=getComputedStyle(i);o=n.display==="none"||n.visibility==="hidden"}return e&&!o}))};i.prototype.createSentinel=function(){var i=document.createElement("div");i.setAttribute("tabindex","0");i.setAttribute("aria-hidden","true");i.classList.add(y);return i};return i}(); /** * @license * Copyright 2016 Google Inc. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. */var E={CLOSING:"mdc-dialog--closing",OPEN:"mdc-dialog--open",OPENING:"mdc-dialog--opening",SCROLLABLE:"mdc-dialog--scrollable",SCROLL_LOCK:"mdc-dialog-scroll-lock",STACKED:"mdc-dialog--stacked",FULLSCREEN:"mdc-dialog--fullscreen",SCROLL_DIVIDER_HEADER:"mdc-dialog-scroll-divider-header",SCROLL_DIVIDER_FOOTER:"mdc-dialog-scroll-divider-footer",SURFACE_SCRIM_SHOWN:"mdc-dialog__surface-scrim--shown",SURFACE_SCRIM_SHOWING:"mdc-dialog__surface-scrim--showing",SURFACE_SCRIM_HIDING:"mdc-dialog__surface-scrim--hiding",SCRIM_HIDDEN:"mdc-dialog__scrim--hidden"};var C={ACTION_ATTRIBUTE:"data-mdc-dialog-action",BUTTON_DEFAULT_ATTRIBUTE:"data-mdc-dialog-button-default",BUTTON_SELECTOR:".mdc-dialog__button",CLOSED_EVENT:"MDCDialog:closed",CLOSE_ACTION:"close",CLOSING_EVENT:"MDCDialog:closing",CONTAINER_SELECTOR:".mdc-dialog__container",CONTENT_SELECTOR:".mdc-dialog__content",DESTROY_ACTION:"destroy",INITIAL_FOCUS_ATTRIBUTE:"data-mdc-dialog-initial-focus",OPENED_EVENT:"MDCDialog:opened",OPENING_EVENT:"MDCDialog:opening",SCRIM_SELECTOR:".mdc-dialog__scrim",SUPPRESS_DEFAULT_PRESS_SELECTOR:["textarea",".mdc-menu .mdc-list-item",".mdc-menu .mdc-deprecated-list-item"].join(", "),SURFACE_SELECTOR:".mdc-dialog__surface"};var T={DIALOG_ANIMATION_CLOSE_TIME_MS:75,DIALOG_ANIMATION_OPEN_TIME_MS:150}; /** * @license * Copyright 2017 Google Inc. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. */var k;(function(i){i["POLL_SCROLL_POS"]="poll_scroll_position";i["POLL_LAYOUT_CHANGE"]="poll_layout_change"})(k||(k={}));var O=function(i){d(t,i);function t(e){var o=i.call(this,c(c({},t.defaultAdapter),e))||this;o.dialogOpen=false;o.isFullscreen=false;o.animationFrame=0;o.animationTimer=0;o.escapeKeyAction=C.CLOSE_ACTION;o.scrimClickAction=C.CLOSE_ACTION;o.autoStackButtons=true;o.areButtonsStacked=false;o.suppressDefaultPressSelector=C.SUPPRESS_DEFAULT_PRESS_SELECTOR;o.animFrame=new u;o.contentScrollHandler=function(){o.handleScrollEvent()};o.windowResizeHandler=function(){o.layout()};o.windowOrientationChangeHandler=function(){o.layout()};return o}Object.defineProperty(t,"cssClasses",{get:function(){return E},enumerable:false,configurable:true});Object.defineProperty(t,"strings",{get:function(){return C},enumerable:false,configurable:true});Object.defineProperty(t,"numbers",{get:function(){return T},enumerable:false,configurable:true});Object.defineProperty(t,"defaultAdapter",{get:function(){return{addBodyClass:function(){return undefined},addClass:function(){return undefined},areButtonsStacked:function(){return false},clickDefaultButton:function(){return undefined},eventTargetMatches:function(){return false},getActionFromEvent:function(){return""},getInitialFocusEl:function(){return null},hasClass:function(){return false},isContentScrollable:function(){return false},notifyClosed:function(){return undefined},notifyClosing:function(){return undefined},notifyOpened:function(){return undefined},notifyOpening:function(){return undefined},releaseFocus:function(){return undefined},removeBodyClass:function(){return undefined},removeClass:function(){return undefined},reverseButtons:function(){return undefined},trapFocus:function(){return undefined},registerContentEventHandler:function(){return undefined},deregisterContentEventHandler:function(){return undefined},isScrollableContentAtTop:function(){return false},isScrollableContentAtBottom:function(){return false},registerWindowEventHandler:function(){return undefined},deregisterWindowEventHandler:function(){return undefined}}},enumerable:false,configurable:true});t.prototype.init=function(){if(this.adapter.hasClass(E.STACKED)){this.setAutoStackButtons(false)}this.isFullscreen=this.adapter.hasClass(E.FULLSCREEN)};t.prototype.destroy=function(){if(this.animationTimer){clearTimeout(this.animationTimer);this.handleAnimationTimerEnd()}if(this.isFullscreen){this.adapter.deregisterContentEventHandler("scroll",this.contentScrollHandler)}this.animFrame.cancelAll();this.adapter.deregisterWindowEventHandler("resize",this.windowResizeHandler);this.adapter.deregisterWindowEventHandler("orientationchange",this.windowOrientationChangeHandler)};t.prototype.open=function(i){var t=this;this.dialogOpen=true;this.adapter.notifyOpening();this.adapter.addClass(E.OPENING);if(this.isFullscreen){this.adapter.registerContentEventHandler("scroll",this.contentScrollHandler)}if(i&&i.isAboveFullscreenDialog){this.adapter.addClass(E.SCRIM_HIDDEN)}this.adapter.registerWindowEventHandler("resize",this.windowResizeHandler);this.adapter.registerWindowEventHandler("orientationchange",this.windowOrientationChangeHandler);this.runNextAnimationFrame((function(){t.adapter.addClass(E.OPEN);t.adapter.addBodyClass(E.SCROLL_LOCK);t.layout();t.animationTimer=setTimeout((function(){t.handleAnimationTimerEnd();t.adapter.trapFocus(t.adapter.getInitialFocusEl());t.adapter.notifyOpened()}),T.DIALOG_ANIMATION_OPEN_TIME_MS)}))};t.prototype.close=function(i){var t=this;if(i===void 0){i=""}if(!this.dialogOpen){return}this.dialogOpen=false;this.adapter.notifyClosing(i);this.adapter.addClass(E.CLOSING);this.adapter.removeClass(E.OPEN);this.adapter.removeBodyClass(E.SCROLL_LOCK);if(this.isFullscreen){this.adapter.deregisterContentEventHandler("scroll",this.contentScrollHandler)}this.adapter.deregisterWindowEventHandler("resize",this.windowResizeHandler);this.adapter.deregisterWindowEventHandler("orientationchange",this.windowOrientationChangeHandler);cancelAnimationFrame(this.animationFrame);this.animationFrame=0;clearTimeout(this.animationTimer);this.animationTimer=setTimeout((function(){t.adapter.releaseFocus();t.handleAnimationTimerEnd();t.adapter.notifyClosed(i)}),T.DIALOG_ANIMATION_CLOSE_TIME_MS)};t.prototype.showSurfaceScrim=function(){var i=this;this.adapter.addClass(E.SURFACE_SCRIM_SHOWING);this.runNextAnimationFrame((function(){i.adapter.addClass(E.SURFACE_SCRIM_SHOWN)}))};t.prototype.hideSurfaceScrim=function(){this.adapter.removeClass(E.SURFACE_SCRIM_SHOWN);this.adapter.addClass(E.SURFACE_SCRIM_HIDING)};t.prototype.handleSurfaceScrimTransitionEnd=function(){this.adapter.removeClass(E.SURFACE_SCRIM_HIDING);this.adapter.removeClass(E.SURFACE_SCRIM_SHOWING)};t.prototype.isOpen=function(){return this.dialogOpen};t.prototype.getEscapeKeyAction=function(){return this.escapeKeyAction};t.prototype.setEscapeKeyAction=function(i){this.escapeKeyAction=i};t.prototype.getScrimClickAction=function(){return this.scrimClickAction};t.prototype.setScrimClickAction=function(i){this.scrimClickAction=i};t.prototype.getAutoStackButtons=function(){return this.autoStackButtons};t.prototype.setAutoStackButtons=function(i){this.autoStackButtons=i};t.prototype.getSuppressDefaultPressSelector=function(){return this.suppressDefaultPressSelector};t.prototype.setSuppressDefaultPressSelector=function(i){this.suppressDefaultPressSelector=i};t.prototype.layout=function(){var i=this;this.animFrame.request(k.POLL_LAYOUT_CHANGE,(function(){i.layoutInternal()}))};t.prototype.handleClick=function(i){var t=this.adapter.eventTargetMatches(i.target,C.SCRIM_SELECTOR);if(t&&this.scrimClickAction!==""){this.close(this.scrimClickAction)}else{var e=this.adapter.getActionFromEvent(i);if(e){this.close(e)}}};t.prototype.handleKeydown=function(i){var t=i.key==="Enter"||i.keyCode===13;if(!t){return}var e=this.adapter.getActionFromEvent(i);if(e){return}var o=i.composedPath?i.composedPath()[0]:i.target;var n=this.suppressDefaultPressSelector?!this.adapter.eventTargetMatches(o,this.suppressDefaultPressSelector):true;if(t&&n){this.adapter.clickDefaultButton()}};t.prototype.handleDocumentKeydown=function(i){var t=i.key==="Escape"||i.keyCode===27;if(t&&this.escapeKeyAction!==""){this.close(this.escapeKeyAction)}};t.prototype.handleScrollEvent=function(){var i=this;this.animFrame.request(k.POLL_SCROLL_POS,(function(){i.toggleScrollDividerHeader();i.toggleScrollDividerFooter()}))};t.prototype.layoutInternal=function(){if(this.autoStackButtons){this.detectStackedButtons()}this.toggleScrollableClasses()};t.prototype.handleAnimationTimerEnd=function(){this.animationTimer=0;this.adapter.removeClass(E.OPENING);this.adapter.removeClass(E.CLOSING)};t.prototype.runNextAnimationFrame=function(i){var t=this;cancelAnimationFrame(this.animationFrame);this.animationFrame=requestAnimationFrame((function(){t.animationFrame=0;clearTimeout(t.animationTimer);t.animationTimer=setTimeout(i,0)}))};t.prototype.detectStackedButtons=function(){this.adapter.removeClass(E.STACKED);var i=this.adapter.areButtonsStacked();if(i){this.adapter.addClass(E.STACKED)}if(i!==this.areButtonsStacked){this.adapter.reverseButtons();this.areButtonsStacked=i}};t.prototype.toggleScrollableClasses=function(){this.adapter.removeClass(E.SCROLLABLE);if(this.adapter.isContentScrollable()){this.adapter.addClass(E.SCROLLABLE);if(this.isFullscreen){this.toggleScrollDividerHeader();this.toggleScrollDividerFooter()}}};t.prototype.toggleScrollDividerHeader=function(){if(!this.adapter.isScrollableContentAtTop()){this.adapter.addClass(E.SCROLL_DIVIDER_HEADER)}else if(this.adapter.hasClass(E.SCROLL_DIVIDER_HEADER)){this.adapter.removeClass(E.SCROLL_DIVIDER_HEADER)}};t.prototype.toggleScrollDividerFooter=function(){if(!this.adapter.isScrollableContentAtBottom()){this.adapter.addClass(E.SCROLL_DIVIDER_FOOTER)}else if(this.adapter.hasClass(E.SCROLL_DIVIDER_FOOTER)){this.adapter.removeClass(E.SCROLL_DIVIDER_FOOTER)}};return t}(r); /** * @license * Copyright 2017 Google Inc. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. */var S=O.strings;var A=function(i){d(t,i);function t(){return i!==null&&i.apply(this,arguments)||this}Object.defineProperty(t.prototype,"isOpen",{get:function(){return this.foundation.isOpen()},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"escapeKeyAction",{get:function(){return this.foundation.getEscapeKeyAction()},set:function(i){this.foundation.setEscapeKeyAction(i)},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"scrimClickAction",{get:function(){return this.foundation.getScrimClickAction()},set:function(i){this.foundation.setScrimClickAction(i)},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"autoStackButtons",{get:function(){return this.foundation.getAutoStackButtons()},set:function(i){this.foundation.setAutoStackButtons(i)},enumerable:false,configurable:true});t.attachTo=function(i){return new t(i)};t.prototype.initialize=function(i){var t,e;if(i===void 0){i=function(i,t){return new w(i,t)}}var o=this.root.querySelector(S.CONTAINER_SELECTOR);if(!o){throw new Error("Dialog component requires a "+S.CONTAINER_SELECTOR+" container element")}this.container=o;this.content=this.root.querySelector(S.CONTENT_SELECTOR);this.buttons=[].slice.call(this.root.querySelectorAll(S.BUTTON_SELECTOR));this.defaultButton=this.root.querySelector("["+S.BUTTON_DEFAULT_ATTRIBUTE+"]");this.focusTrapFactory=i;this.buttonRipples=[];try{for(var n=l(this.buttons),a=n.next();!a.done;a=n.next()){var d=a.value;this.buttonRipples.push(new h(d))}}catch(i){t={error:i}}finally{try{if(a&&!a.done&&(e=n.return))e.call(n)}finally{if(t)throw t.error}}};t.prototype.initialSyncWithDOM=function(){var i=this;this.focusTrap=p(this.container,this.focusTrapFactory,this.getInitialFocusEl()||undefined);this.handleClick=this.foundation.handleClick.bind(this.foundation);this.handleKeydown=this.foundation.handleKeydown.bind(this.foundation);this.handleDocumentKeydown=this.foundation.handleDocumentKeydown.bind(this.foundation);this.handleOpening=function(){document.addEventListener("keydown",i.handleDocumentKeydown)};this.handleClosing=function(){document.removeEventListener("keydown",i.handleDocumentKeydown)};this.listen("click",this.handleClick);this.listen("keydown",this.handleKeydown);this.listen(S.OPENING_EVENT,this.handleOpening);this.listen(S.CLOSING_EVENT,this.handleClosing)};t.prototype.destroy=function(){this.unlisten("click",this.handleClick);this.unlisten("keydown",this.handleKeydown);this.unlisten(S.OPENING_EVENT,this.handleOpening);this.unlisten(S.CLOSING_EVENT,this.handleClosing);this.handleClosing();this.buttonRipples.forEach((function(i){i.destroy()}));i.prototype.destroy.call(this)};t.prototype.layout=function(){this.foundation.layout()};t.prototype.open=function(){this.foundation.open()};t.prototype.close=function(i){if(i===void 0){i=""}this.foundation.close(i)};t.prototype.getDefaultFoundation=function(){var i=this;var t={addBodyClass:function(i){return document.body.classList.add(i)},addClass:function(t){return i.root.classList.add(t)},areButtonsStacked:function(){return v(i.buttons)},clickDefaultButton:function(){if(i.defaultButton&&!i.defaultButton.disabled){i.defaultButton.click()}},eventTargetMatches:function(i,t){return i?m(i,t):false},getActionFromEvent:function(i){if(!i.target){return""}var t=g(i.target,"["+S.ACTION_ATTRIBUTE+"]");return t&&t.getAttribute(S.ACTION_ATTRIBUTE)},getInitialFocusEl:function(){return i.getInitialFocusEl()},hasClass:function(t){return i.root.classList.contains(t)},isContentScrollable:function(){return _(i.content)},notifyClosed:function(t){return i.emit(S.CLOSED_EVENT,t?{action:t}:{})},notifyClosing:function(t){return i.emit(S.CLOSING_EVENT,t?{action:t}:{})},notifyOpened:function(){return i.emit(S.OPENED_EVENT,{})},notifyOpening:function(){return i.emit(S.OPENING_EVENT,{})},releaseFocus:function(){i.focusTrap.releaseFocus()},removeBodyClass:function(i){return document.body.classList.remove(i)},removeClass:function(t){return i.root.classList.remove(t)},reverseButtons:function(){i.buttons.reverse();i.buttons.forEach((function(i){i.parentElement.appendChild(i)}))},trapFocus:function(){i.focusTrap.trapFocus()},registerContentEventHandler:function(t,e){if(i.content instanceof HTMLElement){i.content.addEventListener(t,e)}},deregisterContentEventHandler:function(t,e){if(i.content instanceof HTMLElement){i.content.removeEventListener(t,e)}},isScrollableContentAtTop:function(){return x(i.content)},isScrollableContentAtBottom:function(){return b(i.content)},registerWindowEventHandler:function(i,t){window.addEventListener(i,t)},deregisterWindowEventHandler:function(i,t){window.removeEventListener(i,t)}};return new O(t)};t.prototype.getInitialFocusEl=function(){return this.root.querySelector("["+S.INITIAL_FOCUS_ATTRIBUTE+"]")};return t}(s);const D='@charset "UTF-8";:host{--dialog-background-color:var(--lime-elevated-surface-background-color);--header-heading-color:var(--dialog-heading-title-color);--header-subheading-color:var(--dialog-heading-subtitle-color);--header-supporting-text-color:var(--dialog-heading-supporting-text-color);--header-icon-color:var(--dialog-heading-icon-color);--header-icon-background-color:var(--dialog-heading-icon-background-color)}.mdc-dialog .mdc-dialog__surface{background-color:#fff;background-color:var(--mdc-theme-surface, #fff)}.mdc-dialog .mdc-dialog__scrim{background-color:rgba(0, 0, 0, 0.32)}.mdc-dialog .mdc-dialog__surface-scrim{background-color:rgba(0, 0, 0, 0.32)}.mdc-dialog .mdc-dialog__title{color:rgba(0, 0, 0, 0.87)}.mdc-dialog .mdc-dialog__content{color:rgba(0, 0, 0, 0.6)}.mdc-dialog .mdc-dialog__close{color:#000;color:var(--mdc-theme-on-surface, #000)}.mdc-dialog .mdc-dialog__close .mdc-icon-button__ripple::before,.mdc-dialog .mdc-dialog__close .mdc-icon-button__ripple::after{background-color:#000;background-color:var(--mdc-ripple-color, var(--mdc-theme-on-surface, #000))}.mdc-dialog .mdc-dialog__close:hover .mdc-icon-button__ripple::before,.mdc-dialog .mdc-dialog__close.mdc-ripple-surface--hover .mdc-icon-button__ripple::before{opacity:0.04;opacity:var(--mdc-ripple-hover-opacity, 0.04)}.mdc-dialog .mdc-dialog__close.mdc-ripple-upgraded--background-focused .mdc-icon-button__ripple::before,.mdc-dialog .mdc-dialog__close:not(.mdc-ripple-upgraded):focus .mdc-icon-button__ripple::before{transition-duration:75ms;opacity:0.12;opacity:var(--mdc-ripple-focus-opacity, 0.12)}.mdc-dialog .mdc-dialog__close:not(.mdc-ripple-upgraded) .mdc-icon-button__ripple::after{transition:opacity 150ms linear}.mdc-dialog .mdc-dialog__close:not(.mdc-ripple-upgraded):active .mdc-icon-button__ripple::after{transition-duration:75ms;opacity:0.12;opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-dialog .mdc-dialog__close.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-dialog.mdc-dialog--scrollable .mdc-dialog__title,.mdc-dialog.mdc-dialog--scrollable .mdc-dialog__actions,.mdc-dialog.mdc-dialog--scrollable.mdc-dialog-scroll-divider-footer .mdc-dialog__actions{border-color:rgba(0, 0, 0, 0.12)}.mdc-dialog.mdc-dialog--scrollable .mdc-dialog__title{border-bottom:1px solid rgba(0, 0, 0, 0.12);margin-bottom:0}.mdc-dialog.mdc-dialog-scroll-divider-header.mdc-dialog--fullscreen .mdc-dialog__header{box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}.mdc-dialog .mdc-dialog__surface{border-radius:4px;border-radius:var(--mdc-shape-medium, 4px)}.mdc-dialog__surface{box-shadow:0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12)}.mdc-dialog__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto, sans-serif;font-family:var(--mdc-typography-headline6-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1.25rem;font-size:var(--mdc-typography-headline6-font-size, 1.25rem);line-height:2rem;line-height:var(--mdc-typography-headline6-line-height, 2rem);font-weight:500;font-weight:var(--mdc-typography-headline6-font-weight, 500);letter-spacing:0.0125em;letter-spacing:var(--mdc-typography-headline6-letter-spacing, 0.0125em);text-decoration:inherit;text-decoration:var(--mdc-typography-headline6-text-decoration, inherit);text-transform:inherit;text-transform:var(--mdc-typography-headline6-text-transform, inherit)}.mdc-dialog__content{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto, sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight, 400);letter-spacing:0.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, 0.03125em);text-decoration:inherit;text-decoration:var(--mdc-typography-body1-text-decoration, inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform, inherit)}.mdc-dialog__title-icon{}.mdc-elevation-overlay{position:absolute;border-radius:inherit;pointer-events:none;opacity:0;opacity:var(--mdc-elevation-overlay-opacity, 0);transition:opacity 280ms cubic-bezier(0.4, 0, 0.2, 1);background-color:#fff;background-color:var(--mdc-elevation-overlay-color, #fff)}.mdc-dialog,.mdc-dialog__scrim{position:fixed;top:0;left:0;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.mdc-dialog{display:none;z-index:7;z-index:var(--mdc-dialog-z-index, 7)}.mdc-dialog .mdc-dialog__content{padding:20px 24px 20px 24px}.mdc-dialog .mdc-dialog__surface{min-width:280px}@media (max-width: 592px){.mdc-dialog .mdc-dialog__surface{max-width:calc(100vw - 32px)}}@media (min-width: 592px){.mdc-dialog .mdc-dialog__surface{max-width:560px}}.mdc-dialog .mdc-dialog__surface{max-height:calc(100% - 32px)}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mdc-dialog .mdc-dialog__container{}}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{max-width:none}@media (max-width: 960px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{max-height:560px;width:560px}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__close{right:-12px}}@media (max-width: 720px) and (max-width: 672px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{width:calc(100vw - 112px)}}@media (max-width: 720px) and (min-width: 672px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{width:560px}}@media (max-width: 720px) and (max-height: 720px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{max-height:calc(100vh - 160px)}}@media (max-width: 720px) and (min-height: 720px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{max-height:560px}}@media (max-width: 720px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__close{right:-12px}}@media (max-width: 720px) and (max-height: 400px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{height:100%;max-height:100vh;max-width:100vw;width:100vw;border-radius:0}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__close{order:-1;left:-12px}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__header{padding:0 16px 9px;justify-content:flex-start}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__title{margin-left:calc(16px - 2 * 12px)}}@media (max-width: 600px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{height:100%;max-height:100vh;max-width:100vw;width:100vw;border-radius:0}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__close{order:-1;left:-12px}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__header{padding:0 16px 9px;justify-content:flex-start}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__title{margin-left:calc(16px - 2 * 12px)}}@media (min-width: 960px){.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface{width:calc(100vw - 400px)}.mdc-dialog.mdc-dialog--fullscreen .mdc-dialog__surface .mdc-dialog__close{right:-12px}}.mdc-dialog.mdc-dialog__scrim--hidden .mdc-dialog__scrim{opacity:0}.mdc-dialog__scrim{opacity:0;z-index:-1}.mdc-dialog__container{display:flex;flex-direction:row;align-items:center;justify-content:space-around;box-sizing:border-box;height:100%;transform:scale(0.8);opacity:0;pointer-events:none}.mdc-dialog__surface{position:relative;display:flex;flex-direction:column;flex-grow:0;flex-shrink:0;box-sizing:border-box;max-width:100%;max-height:100%;pointer-events:auto;overflow-y:auto}.mdc-dialog__surface .mdc-elevation-overlay{width:100%;height:100%;top:0;left:0}[dir=rtl] .mdc-dialog__surface,.mdc-dialog__surface[dir=rtl]{text-align:right;}@media screen and (forced-colors: active), (-ms-high-contrast: active){.mdc-dialog__surface{outline:2px solid windowText}}.mdc-dialog__surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:2px solid transparent;border-radius:inherit;content:"";pointer-events:none}@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none){.mdc-dialog__surface::before{content:none}}.mdc-dialog__title{display:block;margin-top:0;position:relative;flex-shrink:0;box-sizing:border-box;margin:0 0 1px;padding:0 24px 9px}.mdc-dialog__title::before{display:inline-block;width:0;height:40px;content:"";vertical-align:0}[dir=rtl] .mdc-dialog__title,.mdc-dialog__title[dir=rtl]{text-align:right;}.mdc-dialog--scrollable .mdc-dialog__title{margin-bottom:1px;padding-bottom:15px}.mdc-dialog--fullscreen .mdc-dialog__header{align-items:baseline;border-bottom:1px solid transparent;display:inline-flex;justify-content:space-between;padding:0 24px 9px;z-index:1}.mdc-dialog--fullscreen .mdc-dialog__header .mdc-dialog__close{right:-12px}.mdc-dialog--fullscreen .mdc-dialog__title{margin-bottom:0;padding:0;border-bottom:0}.mdc-dialog--fullscreen.mdc-dialog--scrollable .mdc-dialog__title{border-bottom:0;margin-bottom:0}.mdc-dialog--fullscreen .mdc-dialog__close{top:5px}.mdc-dialog--fullscreen.mdc-dialog--scrollable .mdc-dialog__actions{border-top:1px solid transparent}.mdc-dialog__content{flex-grow:1;box-sizing:border-box;margin:0;overflow:auto;-webkit-overflow-scrolling:touch}.mdc-dialog__content>:first-child{margin-top:0}.mdc-dialog__content>:last-child{margin-bottom:0}.mdc-dialog__title+.mdc-dialog__content,.mdc-dialog__header+.mdc-dialog__content{padding-top:0}.mdc-dialog--scrollable .mdc-dialog__title+.mdc-dialog__content{padding-top:8px;padding-bottom:8px}.mdc-dialog__content .mdc-deprecated-list:first-child:last-child{padding:6px 0 0}.mdc-dialog--scrollable .mdc-dialog__content .mdc-deprecated-list:first-child:last-child{padding:0}.mdc-dialog__actions{display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid transparent}.mdc-dialog--stacked .mdc-dialog__actions{flex-direction:column;align-items:flex-end}.mdc-dialog__button{margin-left:8px;margin-right:0;max-width:100%;text-align:right}[dir=rtl] .mdc-dialog__button,.mdc-dialog__button[dir=rtl]{margin-left:0;margin-right:8px;}.mdc-dialog__button:first-child{margin-left:0;margin-right:0}[dir=rtl] .mdc-dialog__button:first-child,.mdc-dialog__button:first-child[dir=rtl]{margin-left:0;margin-right:0;}[dir=rtl] .mdc-dialog__button,.mdc-dialog__button[dir=rtl]{text-align:left;}.mdc-dialog--stacked .mdc-dialog__button:not(:first-child){margin-top:12px}.mdc-dialog--open,.mdc-dialog--opening,.mdc-dialog--closing{display:flex}.mdc-dialog--opening .mdc-dialog__scrim{transition:opacity 150ms linear}.mdc-dialog--opening .mdc-dialog__container{transition:opacity 75ms linear, transform 150ms 0ms cubic-bezier(0, 0, 0.2, 1)}.mdc-dialog--closing .mdc-dialog__scrim,.mdc-dialog--closing .mdc-dialog__container{transition:opacity 75ms linear}.mdc-dialog--closing .mdc-dialog__container{transform:none}.mdc-dialog--open .mdc-dialog__scrim{opacity:1}.mdc-dialog--open .mdc-dialog__container{transform:none;opacity:1}.mdc-dialog--open.mdc-dialog__surface-scrim--shown .mdc-dialog__surface-scrim{opacity:1;z-index:1}.mdc-dialog--open.mdc-dialog__surface-scrim--hiding .mdc-dialog__surface-scrim{transition:opacity 75ms linear}.mdc-dialog--open.mdc-dialog__surface-scrim--showing .mdc-dialog__surface-scrim{transition:opacity 150ms linear}.mdc-dialog__surface-scrim{display:none;opacity:0;position:absolute;width:100%;height:100%}.mdc-dialog__surface-scrim--shown .mdc-dialog__surface-scrim,.mdc-dialog__surface-scrim--showing .mdc-dialog__surface-scrim,.mdc-dialog__surface-scrim--hiding .mdc-dialog__surface-scrim{display:block}.mdc-dialog-scroll-lock{overflow:hidden}.mdc-dialog__content{font-family:inherit;font-size:var(--limel-theme-default-font-size)}.mdc-dialog{z-index:var(--dialog-z-index, 7);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}@media (max-width: 16032px){.mdc-dialog .mdc-dialog__surface{max-width:calc(100vw - 32px)}}@media (min-width: 16032px){.mdc-dialog .mdc-dialog__surface{max-width:16000px}}@media (max-height: 16032px){.mdc-dialog.full-screen .mdc-dialog__surface{max-height:calc(100% - 32px)}}@media (min-height: 16032px){.mdc-dialog.full-screen .mdc-dialog__surface{max-height:16000px}}@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){.mdc-dialog.full-screen .mdc-dialog__container{}}@media (-ms-high-contrast: none) and (min-height: 16032px), (-ms-high-contrast: active) and (min-height: 16032px){.mdc-dialog.full-screen .mdc-dialog__container{align-items:stretch;height:auto}}.mdc-dialog.full-screen .mdc-dialog__container{height:100%;width:100%}.mdc-dialog.full-screen .mdc-dialog__container .mdc-dialog__surface{height:100%;width:100%}.mdc-dialog .mdc-dialog__scrim{background-color:rgba(var(--color-black), 0.4)}.mdc-dialog .mdc-dialog__container{height:100%;width:var(--dialog-width, auto)}.mdc-dialog .mdc-dialog__surface{width:var(--dialog-width, auto);height:var(--dialog-height, auto);background-color:var(--dialog-background-color);box-shadow:var(--shadow-depth-64);max-width:var(--dialog-max-width, calc(100vw - 2rem));max-height:var(--dialog-max-height, calc(100% - 2rem));border-radius:0.75rem}.mdc-dialog .mdc-dialog__content{--limel-top-edge-fade-height:var(--dialog-padding-top-bottom, 1.5rem);--limel-bottom-edge-fade-height:var(\n --dialog-padding-top-bottom,\n 1.5rem\n );--limel-overflow-mask-vertical:linear-gradient(\n to bottom,\n transparent 0%,\n black calc(0% + var(--limel-top-edge-fade-height, 1rem)),\n black calc(100% - var(--limel-bottom-edge-fade-height, 1rem)),\n transparent 100%\n );-webkit-mask-image:var(--limel-overflow-mask-vertical);mask-image:var(--limel-overflow-mask-vertical);padding-top:var(--limel-top-edge-fade-height, 1rem);padding-bottom:var(--limel-bottom-edge-fade-height, 1rem);color:var(--limel-theme-on-surface-color);padding-left:var(--dialog-padding-left-right, min(1.25rem, 3vw));padding-right:var(--dialog-padding-left-right, min(1.25rem, 3vw))}#initialFocusElement{position:absolute;opacity:0;pointer-events:none;z-index:-1}slot[name=header]{display:none}slot[name=button]{display:flex;gap:0.5rem;width:100%;justify-content:flex-end}footer.mdc-dialog__actions{min-height:unset;padding:0.375rem}@media screen and (max-width: 760px){slot[name=button]{flex-direction:column-reverse}.mdc-dialog__actions{padding:min(1.5rem, 3vw);padding-top:1rem}}';const I=class{constructor(e){i(this,e);this.close=t(this,"close",7);this.closing=t(this,"closing",7);this.heading=undefined;this.fullscreen=false;this.open=false;this.closingActions={escapeKey:true,scrimClick:true};this.handleMdcOpened=this.handleMdcOpened.bind(this);this.handleMdcClosed=this.handleMdcClosed.bind(this);this.handleMdcClosing=this.handleMdcClosing.bind(this)}connectedCallback(){this.initialize()}componentWillLoad(){this.id=a()}componentDidLoad(){this.initialize()}initialize(){const i=this.host.shadowRoot.querySelector(".mdc-dialog");if(!i){return}this.mdcDialog=new A(i);if(this.open){this.mdcDialog.open()}this.mdcDialog.listen("MDCDialog:opened",this.handleMdcOpened);this.mdcDialog.listen("MDCDialog:closed",this.handleMdcClosed);this.mdcDialog.listen("MDCDialog:closing",this.handleMdcClosing);this.setClosingActions()}disconnectedCallback(){this.mdcDialog.unlisten("MDCDialog:opened",this.handleMdcOpened);this.mdcDialog.unlisten("MDCDialog:closed",this.handleMdcClosed);this.mdcDialog.unlisten("MDCDialog:closing",this.handleMdcClosing);this.mdcDialog.destroy()}render(){return e("div",{class:{"mdc-dialog":true,"full-screen":!!this.fullscreen},role:"alertdialog","aria-modal":"true","aria-labelledby":"limel-dialog-title-"+this.id,"aria-describedby":"limel-dialog-content-"+this.id},e("input",{hidden:true,id:"initialFocusEl"}),e("div",{class:"mdc-dialog__container"},e("div",{class:"mdc-dialog__surface"},e("input",{type:"button",id:"initialFocusElement"}),this.renderHeading(),e("div",{class:"mdc-dialog__content",id:"limel-dialog-content-"+this.id},e("slot",null)),this.renderFooter())),e("div",{class:"mdc-dialog__scrim"}))}watchHandler(i,t){if(t===i){return}if(!this.mdcDialog){return}if(i){this.mdcDialog.open()}else{this.mdcDialog.close()}}closingActionsChanged(i,t){if(f(i,t)){return}this.setClosingActions()}handleMdcOpened(){const i=100;setTimeout(n,i)}handleMdcClosed(){if(this.open){this.close.emit()}this.open=false}handleMdcClosing(){this.closing.emit()}isBadgeHeading(i){return typeof i==="object"&&!!i.title&&!!i.icon}renderHeading(){if(this.isBadgeHeading(this.heading)){const{title:i,subtitle:t,supportingText:o,icon:n}=this.heading;return e("limel-header",{icon:n,heading:i,subheading:t,supportingText:o},e("slot",{name:"header-actions",slot:"actions"}))}else if(typeof this.heading==="string"){return e("limel-header",{heading:this.heading})}return null}renderFooter(){return e("footer",{class:"mdc-dialog__actions"},e("slot",{name:"button"}))}setClosingActions(){this.mdcDialog.scrimClickAction="";if(this.closingActions.scrimClick){this.mdcDialog.scrimClickAction="close"}this.mdcDialog.escapeKeyAction="";if(this.closingActions.escapeKey){this.mdcDialog.escapeKeyAction="close"}}get host(){return o(this)}static get watchers(){return{open:["watchHandler"],closingActions:["closingActionsChanged"]}}};I.style=D;export{I as limel_dialog}; //# sourceMappingURL=p-d7d68f71.entry.js.map