@aurodesignsystem-dev/auro-popover 0.0.0-pr127.4 → 0.0.0-pr127.6
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/demo/api.md
CHANGED
|
@@ -59,7 +59,7 @@ The `auro-popover` element attaches to another element and displays on hover.
|
|
|
59
59
|
|
|
60
60
|
The trigger can be any element, not just buttons or links. The component automatically makes any non-focusable trigger keyboard accessible — including custom elements like `auro-icon` that have no internal focusable element. For icon-based triggers without visible text, `aria-label` is still required to provide an accessible name.
|
|
61
61
|
|
|
62
|
-
> **Accessibility note:** `auro-popover` manages `aria-description` on the
|
|
62
|
+
> **Accessibility note:** `auro-popover` manages `aria-description` on the focusable element(s) within the trigger slot as part of its accessibility contract — the popover content becomes the trigger's accessible description so screen readers can announce it on focus. When the trigger is a non-focusable wrapper around focusable content (e.g. `<div><a href="#">link</a></div>`), the description is applied to each focusable descendant rather than the wrapper itself. Any existing `aria-description` on affected elements will be replaced when the component connects and removed when it disconnects.
|
|
63
63
|
>
|
|
64
64
|
> **Keyboard behavior:** Non-interactive triggers (e.g. `<abbr>`, `<auro-icon>`) are automatically made keyboard accessible with `tabindex="0"`. `Space` and `Enter` toggle the popover open and closed, ensuring keyboard-only users have parity with mouse/hover users. This is intentional — accessibility covers more than screen readers, and without activation semantics a keyboard-only user has no way to interact with a non-interactive trigger.
|
|
65
65
|
|
package/demo/auro-popover.min.js
CHANGED
|
@@ -2125,6 +2125,8 @@ class AuroPopover extends i {
|
|
|
2125
2125
|
if (this._onSlotChange) {
|
|
2126
2126
|
this.shadowRoot?.querySelector("slot:not([name])")?.removeEventListener("slotchange", this._onSlotChange);
|
|
2127
2127
|
}
|
|
2128
|
+
// Remove aria-description from every element that received it in
|
|
2129
|
+
// firstUpdated (focusable descendants or the trigger itself).
|
|
2128
2130
|
for (const target of (this._ariaDescriptionTargets || [this.trigger])) {
|
|
2129
2131
|
target.removeAttribute("aria-description");
|
|
2130
2132
|
}
|
|
@@ -2183,20 +2185,124 @@ class AuroPopover extends i {
|
|
|
2183
2185
|
}
|
|
2184
2186
|
|
|
2185
2187
|
// If the trigger is not keyboard accessible, make it focusable automatically.
|
|
2186
|
-
//
|
|
2187
|
-
|
|
2188
|
-
|
|
2189
|
-
//
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
|
|
2194
|
-
|
|
2195
|
-
|
|
2196
|
-
|
|
2197
|
-
|
|
2198
|
-
|
|
2199
|
-
|
|
2188
|
+
// Set up aria-description so screen readers announce popover content on focus.
|
|
2189
|
+
this._setupAccessibility();
|
|
2190
|
+
|
|
2191
|
+
// Set up Popper instance, event listeners, and keyboard/mouse handlers.
|
|
2192
|
+
this._setupEventListeners();
|
|
2193
|
+
}
|
|
2194
|
+
|
|
2195
|
+
/**
|
|
2196
|
+
* Initializes the Popper instance and attaches all event listeners
|
|
2197
|
+
* for mouse, keyboard, and focus interactions on the trigger.
|
|
2198
|
+
* @private
|
|
2199
|
+
* @returns {void}
|
|
2200
|
+
*/
|
|
2201
|
+
_setupEventListeners() {
|
|
2202
|
+
this.auroPopover = this.shadowRoot.querySelector("#popover");
|
|
2203
|
+
this.popper = new Popover(
|
|
2204
|
+
this.trigger,
|
|
2205
|
+
this.auroPopover,
|
|
2206
|
+
this.placement,
|
|
2207
|
+
this.boundary,
|
|
2208
|
+
);
|
|
2209
|
+
|
|
2210
|
+
this._onBodyMouseover = (evt) => this.handleMouseoverEvent(evt);
|
|
2211
|
+
this._onTriggerMouseEnter = () => { this.toggleShow(); };
|
|
2212
|
+
this._onTriggerMouseLeave = () => { this.toggleHide(); };
|
|
2213
|
+
this._onTriggerFocus = () => { this.toggleShow(); };
|
|
2214
|
+
this._onTriggerBlur = (event) => {
|
|
2215
|
+
// Only hide if focus leaves the trigger entirely, not when moving
|
|
2216
|
+
// between focusable children within the trigger.
|
|
2217
|
+
// Node.contains() does not cross shadow boundaries, so we walk
|
|
2218
|
+
// up through shadow hosts to detect targets inside a descendant
|
|
2219
|
+
// custom element's shadow root.
|
|
2220
|
+
let target = event.relatedTarget;
|
|
2221
|
+
let inside = false;
|
|
2222
|
+
|
|
2223
|
+
while (target) {
|
|
2224
|
+
if (this.trigger.contains(target)) {
|
|
2225
|
+
inside = true;
|
|
2226
|
+
break;
|
|
2227
|
+
}
|
|
2228
|
+
const root = target.getRootNode();
|
|
2229
|
+
target = root instanceof ShadowRoot ? root.host : null;
|
|
2230
|
+
}
|
|
2231
|
+
|
|
2232
|
+
if (!inside) {
|
|
2233
|
+
this.toggleHide();
|
|
2234
|
+
}
|
|
2235
|
+
};
|
|
2236
|
+
this._onTriggerKeydown = (event) => {
|
|
2237
|
+
const key = event.key.toLowerCase();
|
|
2238
|
+
|
|
2239
|
+
if (this.isPopoverVisible) {
|
|
2240
|
+
if (key === "tab" || key === "escape") {
|
|
2241
|
+
this.toggleHide();
|
|
2242
|
+
}
|
|
2243
|
+
}
|
|
2244
|
+
|
|
2245
|
+
if (key === " " || key === "enter") {
|
|
2246
|
+
// Prevent page scroll for Space only on non-native triggers.
|
|
2247
|
+
// Native elements (button, a) handle their own Space/Enter semantics.
|
|
2248
|
+
if (key === " " && this._addedTabIndex) {
|
|
2249
|
+
event.preventDefault();
|
|
2250
|
+
}
|
|
2251
|
+
this.toggle();
|
|
2252
|
+
}
|
|
2253
|
+
};
|
|
2254
|
+
this._onHidePopover = () => { this.toggleHide(); };
|
|
2255
|
+
|
|
2256
|
+
// mouseenter/mouseleave attach to the host when the trigger is a direct
|
|
2257
|
+
// child of auro-popover (slotted), otherwise they attach to the trigger itself.
|
|
2258
|
+
this._eventTarget =
|
|
2259
|
+
this.trigger.parentElement.localName === this.localName
|
|
2260
|
+
? this
|
|
2261
|
+
: this.trigger;
|
|
2262
|
+
|
|
2263
|
+
this._eventTarget.addEventListener("mouseenter", this._onTriggerMouseEnter);
|
|
2264
|
+
this._eventTarget.addEventListener("mouseleave", this._onTriggerMouseLeave);
|
|
2265
|
+
|
|
2266
|
+
// if user tabs off of trigger, then hide the popover.
|
|
2267
|
+
this.trigger.addEventListener("keydown", this._onTriggerKeydown);
|
|
2268
|
+
|
|
2269
|
+
// handle gain/loss of focus — use focusin/focusout so events bubble
|
|
2270
|
+
// from focusable descendants inside wrapper triggers (e.g. <div><a>).
|
|
2271
|
+
this.trigger.addEventListener("focusin", this._onTriggerFocus);
|
|
2272
|
+
this.trigger.addEventListener("focusout", this._onTriggerBlur);
|
|
2273
|
+
|
|
2274
|
+
// e.g. for a closePopover button in the popover
|
|
2275
|
+
this.addEventListener("hidePopover", this._onHidePopover);
|
|
2276
|
+
}
|
|
2277
|
+
|
|
2278
|
+
/**
|
|
2279
|
+
* Sets up auto-tabindex and aria-description on the trigger element.
|
|
2280
|
+
*
|
|
2281
|
+
* Auto-tabindex: ensures non-focusable triggers are keyboard accessible.
|
|
2282
|
+
* Covers native elements (e.g. <abbr>, <span>) and custom elements whose
|
|
2283
|
+
* shadow DOM contains no focusable descendant (e.g. auro-icon).
|
|
2284
|
+
*
|
|
2285
|
+
* We skip elements that are already accessible via the tab order:
|
|
2286
|
+
* - Natively focusable elements (tabIndex >= 0): <button>, <a href>, <input>, etc.
|
|
2287
|
+
* - Custom elements whose shadow DOM contains a focusable descendant (e.g. auro-button
|
|
2288
|
+
* has an inner <button>) — adding tabindex to the host would create a double tab stop.
|
|
2289
|
+
* - Elements where the author has explicitly set tabindex — their intent is respected.
|
|
2290
|
+
*
|
|
2291
|
+
* Known limitation: custom elements with a closed shadow root (mode: 'closed') cannot
|
|
2292
|
+
* be inspected — shadowRoot returns null. If such an element has an internal focusable
|
|
2293
|
+
* descendant and a host tabIndex of -1, tabindex="0" will be added, potentially
|
|
2294
|
+
* creating a double tab stop. Elements using delegatesFocus avoid this because the
|
|
2295
|
+
* browser reflects a non-negative tabIndex on the host.
|
|
2296
|
+
*
|
|
2297
|
+
* aria-description (ARIA 1.3): embeds the popover content string directly on
|
|
2298
|
+
* the trigger so screen readers announce it on focus. Preferred over
|
|
2299
|
+
* aria-describedby (cross-shadow ID lookup fails) and aria-live (display:none
|
|
2300
|
+
* removes the region from the accessibility tree).
|
|
2301
|
+
*
|
|
2302
|
+
* @private
|
|
2303
|
+
* @returns {void}
|
|
2304
|
+
*/
|
|
2305
|
+
_setupAccessibility() {
|
|
2200
2306
|
const isNativelyFocusable = this.trigger.tabIndex >= 0;
|
|
2201
2307
|
const focusableSelector =
|
|
2202
2308
|
'button:not([disabled]), a[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex^="-"]), [contenteditable]:not([contenteditable="false"]), summary, iframe, audio[controls], video[controls]';
|
|
@@ -2204,7 +2310,18 @@ class AuroPopover extends i {
|
|
|
2204
2310
|
// CSS selectors alone can match elements removed from the tab order
|
|
2205
2311
|
// (e.g. <button tabindex="-1">) or hidden/inert descendants. Verify
|
|
2206
2312
|
// actual keyboard reachability before treating a match as focusable.
|
|
2207
|
-
|
|
2313
|
+
// closest() does not cross shadow boundaries, so we also walk up
|
|
2314
|
+
// through shadow hosts to catch hidden/inert ancestors in the light DOM.
|
|
2315
|
+
const isReachable = (el) => {
|
|
2316
|
+
if (el.tabIndex < 0) return false;
|
|
2317
|
+
let node = el;
|
|
2318
|
+
while (node) {
|
|
2319
|
+
if (node.closest('[hidden], [inert]')) return false;
|
|
2320
|
+
const root = node.getRootNode();
|
|
2321
|
+
node = root instanceof ShadowRoot ? root.host : null;
|
|
2322
|
+
}
|
|
2323
|
+
return true;
|
|
2324
|
+
};
|
|
2208
2325
|
|
|
2209
2326
|
// Check light DOM children for focusable elements.
|
|
2210
2327
|
let hasInternalFocus = [...this.trigger.querySelectorAll(focusableSelector)].some(isReachable);
|
|
@@ -2239,23 +2356,7 @@ class AuroPopover extends i {
|
|
|
2239
2356
|
this._addedTabIndex = true;
|
|
2240
2357
|
}
|
|
2241
2358
|
|
|
2242
|
-
//
|
|
2243
|
-
//
|
|
2244
|
-
// Why not aria-describedby?
|
|
2245
|
-
// The trigger (e.g. auro-button) is in light DOM; the popover content lives
|
|
2246
|
-
// inside auro-popover's shadow DOM. aria-describedby ID lookup is scoped to
|
|
2247
|
-
// the same shadow root, so cross-shadow references silently fail.
|
|
2248
|
-
//
|
|
2249
|
-
// Why not aria-live?
|
|
2250
|
-
// The popover is hidden with display:none, which removes it from the
|
|
2251
|
-
// accessibility tree entirely — aria-live never fires. Persistent live regions
|
|
2252
|
-
// in document.body hit VoiceOver's content deduplication: identical text
|
|
2253
|
-
// announced to the same region is suppressed on repeat visits.
|
|
2254
|
-
//
|
|
2255
|
-
// aria-description embeds the string directly on the trigger element with no
|
|
2256
|
-
// ID lookup. VoiceOver recomputes it fresh on every focus event, so content
|
|
2257
|
-
// is announced consistently regardless of prior visits.
|
|
2258
|
-
//
|
|
2359
|
+
// Set up aria-description on the appropriate focusable element(s).
|
|
2259
2360
|
// NOTE: aria-description is defined in the ARIA 1.3 spec. It is well-supported
|
|
2260
2361
|
// in modern browsers and screen readers (Chrome 92+, Firefox 92+, Safari 15.4+)
|
|
2261
2362
|
// but may be unfamiliar — do not replace with aria-describedby.
|
|
@@ -2322,66 +2423,6 @@ class AuroPopover extends i {
|
|
|
2322
2423
|
}
|
|
2323
2424
|
};
|
|
2324
2425
|
slot.addEventListener("slotchange", this._onSlotChange);
|
|
2325
|
-
|
|
2326
|
-
this.auroPopover = this.shadowRoot.querySelector("#popover");
|
|
2327
|
-
this.popper = new Popover(
|
|
2328
|
-
this.trigger,
|
|
2329
|
-
this.auroPopover,
|
|
2330
|
-
this.placement,
|
|
2331
|
-
this.boundary,
|
|
2332
|
-
);
|
|
2333
|
-
|
|
2334
|
-
this._onBodyMouseover = (evt) => this.handleMouseoverEvent(evt);
|
|
2335
|
-
this._onTriggerMouseEnter = () => { this.toggleShow(); };
|
|
2336
|
-
this._onTriggerMouseLeave = () => { this.toggleHide(); };
|
|
2337
|
-
this._onTriggerFocus = () => { this.toggleShow(); };
|
|
2338
|
-
this._onTriggerBlur = (event) => {
|
|
2339
|
-
// Only hide if focus leaves the trigger entirely, not when moving
|
|
2340
|
-
// between focusable children within the trigger.
|
|
2341
|
-
if (!this.trigger.contains(event.relatedTarget)) {
|
|
2342
|
-
this.toggleHide();
|
|
2343
|
-
}
|
|
2344
|
-
};
|
|
2345
|
-
this._onTriggerKeydown = (event) => {
|
|
2346
|
-
const key = event.key.toLowerCase();
|
|
2347
|
-
|
|
2348
|
-
if (this.isPopoverVisible) {
|
|
2349
|
-
if (key === "tab" || key === "escape") {
|
|
2350
|
-
this.toggleHide();
|
|
2351
|
-
}
|
|
2352
|
-
}
|
|
2353
|
-
|
|
2354
|
-
if (key === " " || key === "enter") {
|
|
2355
|
-
// Prevent page scroll for Space only on non-native triggers.
|
|
2356
|
-
// Native elements (button, a) handle their own Space/Enter semantics.
|
|
2357
|
-
if (key === " " && this._addedTabIndex) {
|
|
2358
|
-
event.preventDefault();
|
|
2359
|
-
}
|
|
2360
|
-
this.toggle();
|
|
2361
|
-
}
|
|
2362
|
-
};
|
|
2363
|
-
this._onHidePopover = () => { this.toggleHide(); };
|
|
2364
|
-
|
|
2365
|
-
// mouseenter/mouseleave attach to the host when the trigger is a direct
|
|
2366
|
-
// child of auro-popover (slotted), otherwise they attach to the trigger itself.
|
|
2367
|
-
this._eventTarget =
|
|
2368
|
-
this.trigger.parentElement.localName === this.localName
|
|
2369
|
-
? this
|
|
2370
|
-
: this.trigger;
|
|
2371
|
-
|
|
2372
|
-
this._eventTarget.addEventListener("mouseenter", this._onTriggerMouseEnter);
|
|
2373
|
-
this._eventTarget.addEventListener("mouseleave", this._onTriggerMouseLeave);
|
|
2374
|
-
|
|
2375
|
-
// if user tabs off of trigger, then hide the popover.
|
|
2376
|
-
this.trigger.addEventListener("keydown", this._onTriggerKeydown);
|
|
2377
|
-
|
|
2378
|
-
// handle gain/loss of focus — use focusin/focusout so events bubble
|
|
2379
|
-
// from focusable descendants inside wrapper triggers (e.g. <div><a>).
|
|
2380
|
-
this.trigger.addEventListener("focusin", this._onTriggerFocus);
|
|
2381
|
-
this.trigger.addEventListener("focusout", this._onTriggerBlur);
|
|
2382
|
-
|
|
2383
|
-
// e.g. for a closePopover button in the popover
|
|
2384
|
-
this.addEventListener("hidePopover", this._onHidePopover);
|
|
2385
2426
|
}
|
|
2386
2427
|
|
|
2387
2428
|
/**
|
|
@@ -2408,9 +2449,8 @@ class AuroPopover extends i {
|
|
|
2408
2449
|
toggleHide() {
|
|
2409
2450
|
this.isPopoverVisible = false;
|
|
2410
2451
|
this.removeAttribute("data-show");
|
|
2411
|
-
|
|
2412
|
-
|
|
2413
|
-
}
|
|
2452
|
+
this._popoverHidden = true;
|
|
2453
|
+
this.requestUpdate();
|
|
2414
2454
|
if (this._onBodyMouseover) {
|
|
2415
2455
|
document.body.removeEventListener("mouseover", this._onBodyMouseover);
|
|
2416
2456
|
}
|
|
@@ -2432,9 +2472,8 @@ class AuroPopover extends i {
|
|
|
2432
2472
|
this.popper.show();
|
|
2433
2473
|
this.isPopoverVisible = true;
|
|
2434
2474
|
this.setAttribute("data-show", "true");
|
|
2435
|
-
|
|
2436
|
-
|
|
2437
|
-
}
|
|
2475
|
+
this._popoverHidden = false;
|
|
2476
|
+
this.requestUpdate();
|
|
2438
2477
|
|
|
2439
2478
|
document.body.addEventListener("mouseover", this._onBodyMouseover);
|
|
2440
2479
|
}
|
|
@@ -2463,7 +2502,11 @@ class AuroPopover extends i {
|
|
|
2463
2502
|
// function that renders the HTML and CSS into the scope of the component
|
|
2464
2503
|
render() {
|
|
2465
2504
|
return b`
|
|
2466
|
-
<div
|
|
2505
|
+
<div
|
|
2506
|
+
id="popover"
|
|
2507
|
+
class="popover util_insetLg body-default"
|
|
2508
|
+
part="popover"
|
|
2509
|
+
aria-hidden="${this._popoverHidden !== false ? 'true' : 'false'}">
|
|
2467
2510
|
<div id="arrow" class="arrow" data-popper-arrow></div>
|
|
2468
2511
|
<slot></slot>
|
|
2469
2512
|
</div>
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import{css as e,LitElement as t,html as i}from"lit";class s{registerComponent(e,t){customElements.get(e)||customElements.define(e,class extends t{})}closestElement(e,t=this,i=(t,s=t&&t.closest(e))=>t&&t!==document&&t!==window?s||i(t.getRootNode().host):null){return i(t)}handleComponentTagRename(e,t){const i=t.toLowerCase();e.tagName.toLowerCase()!==i&&e.setAttribute(i,!0)}elementMatch(e,t){const i=t.toLowerCase();return e.tagName.toLowerCase()===i||e.hasAttribute(i)}getSlotText(e,t){const i=e.shadowRoot?.querySelector(`slot[name="${t}"]`);return(i?.assignedNodes({flatten:!0})||[]).map(e=>e.textContent?.trim()).join(" ").trim()||null}}var r="top",o="bottom",n="right",a="left",l="auto",c=[r,o,n,a],p="start",d="end",f="viewport",h="popper",u=c.reduce(function(e,t){return e.concat([t+"-"+p,t+"-"+d])},[]),m=[].concat(c,[l]).reduce(function(e,t){return e.concat([t,t+"-"+p,t+"-"+d])},[]),g=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function v(e){return e?(e.nodeName||"").toLowerCase():null}function y(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function w(e){return e instanceof y(e).Element||e instanceof Element}function b(e){return e instanceof y(e).HTMLElement||e instanceof HTMLElement}function x(e){return"undefined"!=typeof ShadowRoot&&(e instanceof y(e).ShadowRoot||e instanceof ShadowRoot)}var S={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var i=t.styles[e]||{},s=t.attributes[e]||{},r=t.elements[e];b(r)&&v(r)&&(Object.assign(r.style,i),Object.keys(s).forEach(function(e){var t=s[e];!1===t?r.removeAttribute(e):r.setAttribute(e,!0===t?"":t)}))})},effect:function(e){var t=e.state,i={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,i.popper),t.styles=i,t.elements.arrow&&Object.assign(t.elements.arrow.style,i.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],r=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:i[e]).reduce(function(e,t){return e[t]="",e},{});b(s)&&v(s)&&(Object.assign(s.style,o),Object.keys(r).forEach(function(e){s.removeAttribute(e)}))})}},requires:["computeStyles"]};function _(e){return e.split("-")[0]}var A=Math.max,O=Math.min,k=Math.round;function z(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function T(){return!/^((?!chrome|android).)*safari/i.test(z())}function E(e,t,i){void 0===t&&(t=!1),void 0===i&&(i=!1);var s=e.getBoundingClientRect(),r=1,o=1;t&&b(e)&&(r=e.offsetWidth>0&&k(s.width)/e.offsetWidth||1,o=e.offsetHeight>0&&k(s.height)/e.offsetHeight||1);var n=(w(e)?y(e):window).visualViewport,a=!T()&&i,l=(s.left+(a&&n?n.offsetLeft:0))/r,c=(s.top+(a&&n?n.offsetTop:0))/o,p=s.width/r,d=s.height/o;return{width:p,height:d,top:c,right:l+p,bottom:c+d,left:l,x:l,y:c}}function M(e){var t=E(e),i=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-i)<=1&&(i=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:i,height:s}}function B(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(i&&x(i)){var s=t;do{if(s&&e.isSameNode(s))return!0;s=s.parentNode||s.host}while(s)}return!1}function L(e){return y(e).getComputedStyle(e)}function H(e){return["table","td","th"].indexOf(v(e))>=0}function R(e){return((w(e)?e.ownerDocument:e.document)||window.document).documentElement}function C(e){return"html"===v(e)?e:e.assignedSlot||e.parentNode||(x(e)?e.host:null)||R(e)}function D(e){return b(e)&&"fixed"!==L(e).position?e.offsetParent:null}function N(e){for(var t=y(e),i=D(e);i&&H(i)&&"static"===L(i).position;)i=D(i);return i&&("html"===v(i)||"body"===v(i)&&"static"===L(i).position)?t:i||function(e){var t=/firefox/i.test(z());if(/Trident/i.test(z())&&b(e)&&"fixed"===L(e).position)return null;var i=C(e);for(x(i)&&(i=i.host);b(i)&&["html","body"].indexOf(v(i))<0;){var s=L(i);if("none"!==s.transform||"none"!==s.perspective||"paint"===s.contain||-1!==["transform","perspective"].indexOf(s.willChange)||t&&"filter"===s.willChange||t&&s.filter&&"none"!==s.filter)return i;i=i.parentNode}return null}(e)||t}function P(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function j(e,t,i){return A(e,O(t,i))}function I(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function q(e,t){return t.reduce(function(t,i){return t[i]=e,t},{})}var F={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,i=e.state,s=e.name,l=e.options,p=i.elements.arrow,d=i.modifiersData.popperOffsets,f=_(i.placement),h=P(f),u=[a,n].indexOf(f)>=0?"height":"width";if(p&&d){var m=function(e,t){return I("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:q(e,c))}(l.padding,i),g=M(p),v="y"===h?r:a,y="y"===h?o:n,w=i.rects.reference[u]+i.rects.reference[h]-d[h]-i.rects.popper[u],b=d[h]-i.rects.reference[h],x=N(p),S=x?"y"===h?x.clientHeight||0:x.clientWidth||0:0,A=w/2-b/2,O=m[v],k=S-g[u]-m[y],z=S/2-g[u]/2+A,T=j(O,z,k),E=h;i.modifiersData[s]=((t={})[E]=T,t.centerOffset=T-z,t)}},effect:function(e){var t=e.state,i=e.options.element,s=void 0===i?"[data-popper-arrow]":i;null!=s&&("string"!=typeof s||(s=t.elements.popper.querySelector(s)))&&B(t.elements.popper,s)&&(t.elements.arrow=s)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function U(e){return e.split("-")[1]}var W={top:"auto",right:"auto",bottom:"auto",left:"auto"};function X(e){var t,i=e.popper,s=e.popperRect,l=e.placement,c=e.variation,p=e.offsets,f=e.position,h=e.gpuAcceleration,u=e.adaptive,m=e.roundOffsets,g=e.isFixed,v=p.x,w=void 0===v?0:v,b=p.y,x=void 0===b?0:b,S="function"==typeof m?m({x:w,y:x}):{x:w,y:x};w=S.x,x=S.y;var _=p.hasOwnProperty("x"),A=p.hasOwnProperty("y"),O=a,z=r,T=window;if(u){var E=N(i),M="clientHeight",B="clientWidth";if(E===y(i)&&"static"!==L(E=R(i)).position&&"absolute"===f&&(M="scrollHeight",B="scrollWidth"),l===r||(l===a||l===n)&&c===d)z=o,x-=(g&&E===T&&T.visualViewport?T.visualViewport.height:E[M])-s.height,x*=h?1:-1;if(l===a||(l===r||l===o)&&c===d)O=n,w-=(g&&E===T&&T.visualViewport?T.visualViewport.width:E[B])-s.width,w*=h?1:-1}var H,C=Object.assign({position:f},u&&W),D=!0===m?function(e,t){var i=e.x,s=e.y,r=t.devicePixelRatio||1;return{x:k(i*r)/r||0,y:k(s*r)/r||0}}({x:w,y:x},y(i)):{x:w,y:x};return w=D.x,x=D.y,h?Object.assign({},C,((H={})[z]=A?"0":"",H[O]=_?"0":"",H.transform=(T.devicePixelRatio||1)<=1?"translate("+w+"px, "+x+"px)":"translate3d("+w+"px, "+x+"px, 0)",H)):Object.assign({},C,((t={})[z]=A?x+"px":"",t[O]=_?w+"px":"",t.transform="",t))}var V={passive:!0};var G={left:"right",right:"left",bottom:"top",top:"bottom"};function $(e){return e.replace(/left|right|bottom|top/g,function(e){return G[e]})}var K={start:"end",end:"start"};function Y(e){return e.replace(/start|end/g,function(e){return K[e]})}function J(e){var t=y(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Q(e){return E(R(e)).left+J(e).scrollLeft}function Z(e){var t=L(e),i=t.overflow,s=t.overflowX,r=t.overflowY;return/auto|scroll|overlay|hidden/.test(i+r+s)}function ee(e){return["html","body","#document"].indexOf(v(e))>=0?e.ownerDocument.body:b(e)&&Z(e)?e:ee(C(e))}function te(e,t){var i;void 0===t&&(t=[]);var s=ee(e),r=s===(null==(i=e.ownerDocument)?void 0:i.body),o=y(s),n=r?[o].concat(o.visualViewport||[],Z(s)?s:[]):s,a=t.concat(n);return r?a:a.concat(te(C(n)))}function ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function se(e,t,i){return t===f?ie(function(e,t){var i=y(e),s=R(e),r=i.visualViewport,o=s.clientWidth,n=s.clientHeight,a=0,l=0;if(r){o=r.width,n=r.height;var c=T();(c||!c&&"fixed"===t)&&(a=r.offsetLeft,l=r.offsetTop)}return{width:o,height:n,x:a+Q(e),y:l}}(e,i)):w(t)?function(e,t){var i=E(e,!1,"fixed"===t);return i.top=i.top+e.clientTop,i.left=i.left+e.clientLeft,i.bottom=i.top+e.clientHeight,i.right=i.left+e.clientWidth,i.width=e.clientWidth,i.height=e.clientHeight,i.x=i.left,i.y=i.top,i}(t,i):ie(function(e){var t,i=R(e),s=J(e),r=null==(t=e.ownerDocument)?void 0:t.body,o=A(i.scrollWidth,i.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),n=A(i.scrollHeight,i.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),a=-s.scrollLeft+Q(e),l=-s.scrollTop;return"rtl"===L(r||i).direction&&(a+=A(i.clientWidth,r?r.clientWidth:0)-o),{width:o,height:n,x:a,y:l}}(R(e)))}function re(e,t,i,s){var r="clippingParents"===t?function(e){var t=te(C(e)),i=["absolute","fixed"].indexOf(L(e).position)>=0&&b(e)?N(e):e;return w(i)?t.filter(function(e){return w(e)&&B(e,i)&&"body"!==v(e)}):[]}(e):[].concat(t),o=[].concat(r,[i]),n=o[0],a=o.reduce(function(t,i){var r=se(e,i,s);return t.top=A(r.top,t.top),t.right=O(r.right,t.right),t.bottom=O(r.bottom,t.bottom),t.left=A(r.left,t.left),t},se(e,n,s));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function oe(e){var t,i=e.reference,s=e.element,l=e.placement,c=l?_(l):null,f=l?U(l):null,h=i.x+i.width/2-s.width/2,u=i.y+i.height/2-s.height/2;switch(c){case r:t={x:h,y:i.y-s.height};break;case o:t={x:h,y:i.y+i.height};break;case n:t={x:i.x+i.width,y:u};break;case a:t={x:i.x-s.width,y:u};break;default:t={x:i.x,y:i.y}}var m=c?P(c):null;if(null!=m){var g="y"===m?"height":"width";switch(f){case p:t[m]=t[m]-(i[g]/2-s[g]/2);break;case d:t[m]=t[m]+(i[g]/2-s[g]/2)}}return t}function ne(e,t){void 0===t&&(t={});var i=t,s=i.placement,a=void 0===s?e.placement:s,l=i.strategy,p=void 0===l?e.strategy:l,d=i.boundary,u=void 0===d?"clippingParents":d,m=i.rootBoundary,g=void 0===m?f:m,v=i.elementContext,y=void 0===v?h:v,b=i.altBoundary,x=void 0!==b&&b,S=i.padding,_=void 0===S?0:S,A=I("number"!=typeof _?_:q(_,c)),O=y===h?"reference":h,k=e.rects.popper,z=e.elements[x?O:y],T=re(w(z)?z:z.contextElement||R(e.elements.popper),u,g,p),M=E(e.elements.reference),B=oe({reference:M,element:k,placement:a}),L=ie(Object.assign({},k,B)),H=y===h?L:M,C={top:T.top-H.top+A.top,bottom:H.bottom-T.bottom+A.bottom,left:T.left-H.left+A.left,right:H.right-T.right+A.right},D=e.modifiersData.offset;if(y===h&&D){var N=D[a];Object.keys(C).forEach(function(e){var t=[n,o].indexOf(e)>=0?1:-1,i=[r,o].indexOf(e)>=0?"y":"x";C[e]+=N[i]*t})}return C}function ae(e,t){void 0===t&&(t={});var i=t,s=i.placement,r=i.boundary,o=i.rootBoundary,n=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,p=void 0===l?m:l,d=U(s),f=d?a?u:u.filter(function(e){return U(e)===d}):c,h=f.filter(function(e){return p.indexOf(e)>=0});0===h.length&&(h=f);var g=h.reduce(function(t,i){return t[i]=ne(e,{placement:i,boundary:r,rootBoundary:o,padding:n})[_(i)],t},{});return Object.keys(g).sort(function(e,t){return g[e]-g[t]})}var le={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name;if(!t.modifiersData[s]._skip){for(var c=i.mainAxis,d=void 0===c||c,f=i.altAxis,h=void 0===f||f,u=i.fallbackPlacements,m=i.padding,g=i.boundary,v=i.rootBoundary,y=i.altBoundary,w=i.flipVariations,b=void 0===w||w,x=i.allowedAutoPlacements,S=t.options.placement,A=_(S),O=u||(A===S||!b?[$(S)]:function(e){if(_(e)===l)return[];var t=$(e);return[Y(e),t,Y(t)]}(S)),k=[S].concat(O).reduce(function(e,i){return e.concat(_(i)===l?ae(t,{placement:i,boundary:g,rootBoundary:v,padding:m,flipVariations:b,allowedAutoPlacements:x}):i)},[]),z=t.rects.reference,T=t.rects.popper,E=new Map,M=!0,B=k[0],L=0;L<k.length;L++){var H=k[L],R=_(H),C=U(H)===p,D=[r,o].indexOf(R)>=0,N=D?"width":"height",P=ne(t,{placement:H,boundary:g,rootBoundary:v,altBoundary:y,padding:m}),j=D?C?n:a:C?o:r;z[N]>T[N]&&(j=$(j));var I=$(j),q=[];if(d&&q.push(P[R]<=0),h&&q.push(P[j]<=0,P[I]<=0),q.every(function(e){return e})){B=H,M=!1;break}E.set(H,q)}if(M)for(var F=function(e){var t=k.find(function(t){var i=E.get(t);if(i)return i.slice(0,e).every(function(e){return e})});if(t)return B=t,"break"},W=b?3:1;W>0;W--){if("break"===F(W))break}t.placement!==B&&(t.modifiersData[s]._skip=!0,t.placement=B,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function ce(e,t,i){return void 0===i&&(i={x:0,y:0}),{top:e.top-t.height-i.y,right:e.right-t.width+i.x,bottom:e.bottom-t.height+i.y,left:e.left-t.width-i.x}}function pe(e){return[r,n,o,a].some(function(t){return e[t]>=0})}var de={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,i=e.options,s=e.name,o=i.offset,l=void 0===o?[0,0]:o,c=m.reduce(function(e,i){return e[i]=function(e,t,i){var s=_(e),o=[a,r].indexOf(s)>=0?-1:1,l="function"==typeof i?i(Object.assign({},t,{placement:e})):i,c=l[0],p=l[1];return c=c||0,p=(p||0)*o,[a,n].indexOf(s)>=0?{x:p,y:c}:{x:c,y:p}}(i,t.rects,l),e},{}),p=c[t.placement],d=p.x,f=p.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=d,t.modifiersData.popperOffsets.y+=f),t.modifiersData[s]=c}};var fe={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name,l=i.mainAxis,c=void 0===l||l,d=i.altAxis,f=void 0!==d&&d,h=i.boundary,u=i.rootBoundary,m=i.altBoundary,g=i.padding,v=i.tether,y=void 0===v||v,w=i.tetherOffset,b=void 0===w?0:w,x=ne(t,{boundary:h,rootBoundary:u,padding:g,altBoundary:m}),S=_(t.placement),k=U(t.placement),z=!k,T=P(S),E="x"===T?"y":"x",B=t.modifiersData.popperOffsets,L=t.rects.reference,H=t.rects.popper,R="function"==typeof b?b(Object.assign({},t.rects,{placement:t.placement})):b,C="number"==typeof R?{mainAxis:R,altAxis:R}:Object.assign({mainAxis:0,altAxis:0},R),D=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,I={x:0,y:0};if(B){if(c){var q,F="y"===T?r:a,W="y"===T?o:n,X="y"===T?"height":"width",V=B[T],G=V+x[F],$=V-x[W],K=y?-H[X]/2:0,Y=k===p?L[X]:H[X],J=k===p?-H[X]:-L[X],Q=t.elements.arrow,Z=y&&Q?M(Q):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[F],ie=ee[W],se=j(0,L[X],Z[X]),re=z?L[X]/2-K-se-te-C.mainAxis:Y-se-te-C.mainAxis,oe=z?-L[X]/2+K+se+ie+C.mainAxis:J+se+ie+C.mainAxis,ae=t.elements.arrow&&N(t.elements.arrow),le=ae?"y"===T?ae.clientTop||0:ae.clientLeft||0:0,ce=null!=(q=null==D?void 0:D[T])?q:0,pe=V+oe-ce,de=j(y?O(G,V+re-ce-le):G,V,y?A($,pe):$);B[T]=de,I[T]=de-V}if(f){var fe,he="x"===T?r:a,ue="x"===T?o:n,me=B[E],ge="y"===E?"height":"width",ve=me+x[he],ye=me-x[ue],we=-1!==[r,a].indexOf(S),be=null!=(fe=null==D?void 0:D[E])?fe:0,xe=we?ve:me-L[ge]-H[ge]-be+C.altAxis,Se=we?me+L[ge]+H[ge]-be-C.altAxis:ye,_e=y&&we?function(e,t,i){var s=j(e,t,i);return s>i?i:s}(xe,me,Se):j(y?xe:ve,me,y?Se:ye);B[E]=_e,I[E]=_e-me}t.modifiersData[s]=I}},requiresIfExists:["offset"]};function he(e,t,i){void 0===i&&(i=!1);var s,r,o=b(t),n=b(t)&&function(e){var t=e.getBoundingClientRect(),i=k(t.width)/e.offsetWidth||1,s=k(t.height)/e.offsetHeight||1;return 1!==i||1!==s}(t),a=R(t),l=E(e,n,i),c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return(o||!o&&!i)&&(("body"!==v(t)||Z(a))&&(c=(s=t)!==y(s)&&b(s)?{scrollLeft:(r=s).scrollLeft,scrollTop:r.scrollTop}:J(s)),b(t)?((p=E(t,!0)).x+=t.clientLeft,p.y+=t.clientTop):a&&(p.x=Q(a))),{x:l.left+c.scrollLeft-p.x,y:l.top+c.scrollTop-p.y,width:l.width,height:l.height}}function ue(e){var t=new Map,i=new Set,s=[];function r(e){i.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!i.has(e)){var s=t.get(e);s&&r(s)}}),s.push(e)}return e.forEach(function(e){t.set(e.name,e)}),e.forEach(function(e){i.has(e.name)||r(e)}),s}var me={placement:"bottom",modifiers:[],strategy:"absolute"};function ge(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return!t.some(function(e){return!(e&&"function"==typeof e.getBoundingClientRect)})}function ve(e){void 0===e&&(e={});var t=e,i=t.defaultModifiers,s=void 0===i?[]:i,r=t.defaultOptions,o=void 0===r?me:r;return function(e,t,i){void 0===i&&(i=o);var r,n,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},me,o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},l=[],c=!1,p={state:a,setOptions:function(i){var r="function"==typeof i?i(a.options):i;d(),a.options=Object.assign({},o,a.options,r),a.scrollParents={reference:w(e)?te(e):e.contextElement?te(e.contextElement):[],popper:te(t)};var n,c,f=function(e){var t=ue(e);return g.reduce(function(e,i){return e.concat(t.filter(function(e){return e.phase===i}))},[])}((n=[].concat(s,a.options.modifiers),c=n.reduce(function(e,t){var i=e[t.name];return e[t.name]=i?Object.assign({},i,t,{options:Object.assign({},i.options,t.options),data:Object.assign({},i.data,t.data)}):t,e},{}),Object.keys(c).map(function(e){return c[e]})));return a.orderedModifiers=f.filter(function(e){return e.enabled}),a.orderedModifiers.forEach(function(e){var t=e.name,i=e.options,s=void 0===i?{}:i,r=e.effect;if("function"==typeof r){var o=r({state:a,name:t,instance:p,options:s}),n=function(){};l.push(o||n)}}),p.update()},forceUpdate:function(){if(!c){var e=a.elements,t=e.reference,i=e.popper;if(ge(t,i)){a.rects={reference:he(t,N(i),"fixed"===a.options.strategy),popper:M(i)},a.reset=!1,a.placement=a.options.placement,a.orderedModifiers.forEach(function(e){return a.modifiersData[e.name]=Object.assign({},e.data)});for(var s=0;s<a.orderedModifiers.length;s++)if(!0!==a.reset){var r=a.orderedModifiers[s],o=r.fn,n=r.options,l=void 0===n?{}:n,d=r.name;"function"==typeof o&&(a=o({state:a,options:l,name:d,instance:p})||a)}else a.reset=!1,s=-1}}},update:(r=function(){return new Promise(function(e){p.forceUpdate(),e(a)})},function(){return n||(n=new Promise(function(e){Promise.resolve().then(function(){n=void 0,e(r())})})),n}),destroy:function(){d(),c=!0}};if(!ge(e,t))return p;function d(){l.forEach(function(e){return e()}),l=[]}return p.setOptions(i).then(function(e){!c&&i.onFirstUpdate&&i.onFirstUpdate(e)}),p}}var ye=ve({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,i=e.instance,s=e.options,r=s.scroll,o=void 0===r||r,n=s.resize,a=void 0===n||n,l=y(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach(function(e){e.addEventListener("scroll",i.update,V)}),a&&l.addEventListener("resize",i.update,V),function(){o&&c.forEach(function(e){e.removeEventListener("scroll",i.update,V)}),a&&l.removeEventListener("resize",i.update,V)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,i=e.name;t.modifiersData[i]=oe({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,i=e.options,s=i.gpuAcceleration,r=void 0===s||s,o=i.adaptive,n=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:_(t.placement),variation:U(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:r,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,X(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:n,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,X(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},S,de,le,fe,F,{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,i=e.name,s=t.rects.reference,r=t.rects.popper,o=t.modifiersData.preventOverflow,n=ne(t,{elementContext:"reference"}),a=ne(t,{altBoundary:!0}),l=ce(n,s),c=ce(a,r,o),p=pe(l),d=pe(c);t.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":d})}}]});class we{constructor(e,t,i,s){this.anchor=e,this.popover=t,this.boundaryElement=this.setBoundary(s),this.options={placement:i,visibleClass:"data-show"},this.popover.classList.remove(this.options.visibleClass)}setBoundary(e){return"string"==typeof e?document.querySelector(e)||document.body:e||document.body}show(){this.popper&&this.popper.destroy(),this.popper=ye(this.anchor,this.popover,{tooltip:this.anchor,placement:this.options.placement,modifiers:[{name:"offset",options:{offset:[0,18]}},{name:"preventOverflow",options:{mainAxis:!0,boundary:this.boundaryElement,rootBoundary:"document",padding:16}}]})}triggerUpdate(){this.popper.update()}hide(){this.popover.classList.remove(this.options.visibleClass)}}var be=e`::slotted(*):not([onDark]),::slotted(*):not([appearance=inverse]){color:var(--ds-auro-popover-text-color)}.popover{background-color:var(--ds-auro-popover-container-color);box-shadow:var(--ds-auro-popover-boxshadow-color)}.arrow:before{background-color:var(--ds-auro-popover-container-color);box-shadow:2px 2px 1px 0 var(--ds-auro-popover-boxshadow-color)}
|
|
1
|
+
import{css as e,LitElement as t,html as i}from"lit";class s{registerComponent(e,t){customElements.get(e)||customElements.define(e,class extends t{})}closestElement(e,t=this,i=(t,s=t&&t.closest(e))=>t&&t!==document&&t!==window?s||i(t.getRootNode().host):null){return i(t)}handleComponentTagRename(e,t){const i=t.toLowerCase();e.tagName.toLowerCase()!==i&&e.setAttribute(i,!0)}elementMatch(e,t){const i=t.toLowerCase();return e.tagName.toLowerCase()===i||e.hasAttribute(i)}getSlotText(e,t){const i=e.shadowRoot?.querySelector(`slot[name="${t}"]`);return(i?.assignedNodes({flatten:!0})||[]).map(e=>e.textContent?.trim()).join(" ").trim()||null}}var r="top",o="bottom",n="right",a="left",l="auto",c=[r,o,n,a],p="start",d="end",f="viewport",h="popper",u=c.reduce(function(e,t){return e.concat([t+"-"+p,t+"-"+d])},[]),m=[].concat(c,[l]).reduce(function(e,t){return e.concat([t,t+"-"+p,t+"-"+d])},[]),g=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function v(e){return e?(e.nodeName||"").toLowerCase():null}function y(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function w(e){return e instanceof y(e).Element||e instanceof Element}function b(e){return e instanceof y(e).HTMLElement||e instanceof HTMLElement}function x(e){return"undefined"!=typeof ShadowRoot&&(e instanceof y(e).ShadowRoot||e instanceof ShadowRoot)}var S={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var i=t.styles[e]||{},s=t.attributes[e]||{},r=t.elements[e];b(r)&&v(r)&&(Object.assign(r.style,i),Object.keys(s).forEach(function(e){var t=s[e];!1===t?r.removeAttribute(e):r.setAttribute(e,!0===t?"":t)}))})},effect:function(e){var t=e.state,i={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,i.popper),t.styles=i,t.elements.arrow&&Object.assign(t.elements.arrow.style,i.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],r=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:i[e]).reduce(function(e,t){return e[t]="",e},{});b(s)&&v(s)&&(Object.assign(s.style,o),Object.keys(r).forEach(function(e){s.removeAttribute(e)}))})}},requires:["computeStyles"]};function _(e){return e.split("-")[0]}var A=Math.max,O=Math.min,k=Math.round;function z(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function T(){return!/^((?!chrome|android).)*safari/i.test(z())}function E(e,t,i){void 0===t&&(t=!1),void 0===i&&(i=!1);var s=e.getBoundingClientRect(),r=1,o=1;t&&b(e)&&(r=e.offsetWidth>0&&k(s.width)/e.offsetWidth||1,o=e.offsetHeight>0&&k(s.height)/e.offsetHeight||1);var n=(w(e)?y(e):window).visualViewport,a=!T()&&i,l=(s.left+(a&&n?n.offsetLeft:0))/r,c=(s.top+(a&&n?n.offsetTop:0))/o,p=s.width/r,d=s.height/o;return{width:p,height:d,top:c,right:l+p,bottom:c+d,left:l,x:l,y:c}}function M(e){var t=E(e),i=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-i)<=1&&(i=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:i,height:s}}function B(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(i&&x(i)){var s=t;do{if(s&&e.isSameNode(s))return!0;s=s.parentNode||s.host}while(s)}return!1}function L(e){return y(e).getComputedStyle(e)}function H(e){return["table","td","th"].indexOf(v(e))>=0}function R(e){return((w(e)?e.ownerDocument:e.document)||window.document).documentElement}function C(e){return"html"===v(e)?e:e.assignedSlot||e.parentNode||(x(e)?e.host:null)||R(e)}function D(e){return b(e)&&"fixed"!==L(e).position?e.offsetParent:null}function N(e){for(var t=y(e),i=D(e);i&&H(i)&&"static"===L(i).position;)i=D(i);return i&&("html"===v(i)||"body"===v(i)&&"static"===L(i).position)?t:i||function(e){var t=/firefox/i.test(z());if(/Trident/i.test(z())&&b(e)&&"fixed"===L(e).position)return null;var i=C(e);for(x(i)&&(i=i.host);b(i)&&["html","body"].indexOf(v(i))<0;){var s=L(i);if("none"!==s.transform||"none"!==s.perspective||"paint"===s.contain||-1!==["transform","perspective"].indexOf(s.willChange)||t&&"filter"===s.willChange||t&&s.filter&&"none"!==s.filter)return i;i=i.parentNode}return null}(e)||t}function j(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function I(e,t,i){return A(e,O(t,i))}function q(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function P(e,t){return t.reduce(function(t,i){return t[i]=e,t},{})}var F={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,i=e.state,s=e.name,l=e.options,p=i.elements.arrow,d=i.modifiersData.popperOffsets,f=_(i.placement),h=j(f),u=[a,n].indexOf(f)>=0?"height":"width";if(p&&d){var m=function(e,t){return q("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:P(e,c))}(l.padding,i),g=M(p),v="y"===h?r:a,y="y"===h?o:n,w=i.rects.reference[u]+i.rects.reference[h]-d[h]-i.rects.popper[u],b=d[h]-i.rects.reference[h],x=N(p),S=x?"y"===h?x.clientHeight||0:x.clientWidth||0:0,A=w/2-b/2,O=m[v],k=S-g[u]-m[y],z=S/2-g[u]/2+A,T=I(O,z,k),E=h;i.modifiersData[s]=((t={})[E]=T,t.centerOffset=T-z,t)}},effect:function(e){var t=e.state,i=e.options.element,s=void 0===i?"[data-popper-arrow]":i;null!=s&&("string"!=typeof s||(s=t.elements.popper.querySelector(s)))&&B(t.elements.popper,s)&&(t.elements.arrow=s)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function U(e){return e.split("-")[1]}var W={top:"auto",right:"auto",bottom:"auto",left:"auto"};function X(e){var t,i=e.popper,s=e.popperRect,l=e.placement,c=e.variation,p=e.offsets,f=e.position,h=e.gpuAcceleration,u=e.adaptive,m=e.roundOffsets,g=e.isFixed,v=p.x,w=void 0===v?0:v,b=p.y,x=void 0===b?0:b,S="function"==typeof m?m({x:w,y:x}):{x:w,y:x};w=S.x,x=S.y;var _=p.hasOwnProperty("x"),A=p.hasOwnProperty("y"),O=a,z=r,T=window;if(u){var E=N(i),M="clientHeight",B="clientWidth";if(E===y(i)&&"static"!==L(E=R(i)).position&&"absolute"===f&&(M="scrollHeight",B="scrollWidth"),l===r||(l===a||l===n)&&c===d)z=o,x-=(g&&E===T&&T.visualViewport?T.visualViewport.height:E[M])-s.height,x*=h?1:-1;if(l===a||(l===r||l===o)&&c===d)O=n,w-=(g&&E===T&&T.visualViewport?T.visualViewport.width:E[B])-s.width,w*=h?1:-1}var H,C=Object.assign({position:f},u&&W),D=!0===m?function(e,t){var i=e.x,s=e.y,r=t.devicePixelRatio||1;return{x:k(i*r)/r||0,y:k(s*r)/r||0}}({x:w,y:x},y(i)):{x:w,y:x};return w=D.x,x=D.y,h?Object.assign({},C,((H={})[z]=A?"0":"",H[O]=_?"0":"",H.transform=(T.devicePixelRatio||1)<=1?"translate("+w+"px, "+x+"px)":"translate3d("+w+"px, "+x+"px, 0)",H)):Object.assign({},C,((t={})[z]=A?x+"px":"",t[O]=_?w+"px":"",t.transform="",t))}var V={passive:!0};var $={left:"right",right:"left",bottom:"top",top:"bottom"};function G(e){return e.replace(/left|right|bottom|top/g,function(e){return $[e]})}var K={start:"end",end:"start"};function Y(e){return e.replace(/start|end/g,function(e){return K[e]})}function J(e){var t=y(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Q(e){return E(R(e)).left+J(e).scrollLeft}function Z(e){var t=L(e),i=t.overflow,s=t.overflowX,r=t.overflowY;return/auto|scroll|overlay|hidden/.test(i+r+s)}function ee(e){return["html","body","#document"].indexOf(v(e))>=0?e.ownerDocument.body:b(e)&&Z(e)?e:ee(C(e))}function te(e,t){var i;void 0===t&&(t=[]);var s=ee(e),r=s===(null==(i=e.ownerDocument)?void 0:i.body),o=y(s),n=r?[o].concat(o.visualViewport||[],Z(s)?s:[]):s,a=t.concat(n);return r?a:a.concat(te(C(n)))}function ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function se(e,t,i){return t===f?ie(function(e,t){var i=y(e),s=R(e),r=i.visualViewport,o=s.clientWidth,n=s.clientHeight,a=0,l=0;if(r){o=r.width,n=r.height;var c=T();(c||!c&&"fixed"===t)&&(a=r.offsetLeft,l=r.offsetTop)}return{width:o,height:n,x:a+Q(e),y:l}}(e,i)):w(t)?function(e,t){var i=E(e,!1,"fixed"===t);return i.top=i.top+e.clientTop,i.left=i.left+e.clientLeft,i.bottom=i.top+e.clientHeight,i.right=i.left+e.clientWidth,i.width=e.clientWidth,i.height=e.clientHeight,i.x=i.left,i.y=i.top,i}(t,i):ie(function(e){var t,i=R(e),s=J(e),r=null==(t=e.ownerDocument)?void 0:t.body,o=A(i.scrollWidth,i.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),n=A(i.scrollHeight,i.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),a=-s.scrollLeft+Q(e),l=-s.scrollTop;return"rtl"===L(r||i).direction&&(a+=A(i.clientWidth,r?r.clientWidth:0)-o),{width:o,height:n,x:a,y:l}}(R(e)))}function re(e,t,i,s){var r="clippingParents"===t?function(e){var t=te(C(e)),i=["absolute","fixed"].indexOf(L(e).position)>=0&&b(e)?N(e):e;return w(i)?t.filter(function(e){return w(e)&&B(e,i)&&"body"!==v(e)}):[]}(e):[].concat(t),o=[].concat(r,[i]),n=o[0],a=o.reduce(function(t,i){var r=se(e,i,s);return t.top=A(r.top,t.top),t.right=O(r.right,t.right),t.bottom=O(r.bottom,t.bottom),t.left=A(r.left,t.left),t},se(e,n,s));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function oe(e){var t,i=e.reference,s=e.element,l=e.placement,c=l?_(l):null,f=l?U(l):null,h=i.x+i.width/2-s.width/2,u=i.y+i.height/2-s.height/2;switch(c){case r:t={x:h,y:i.y-s.height};break;case o:t={x:h,y:i.y+i.height};break;case n:t={x:i.x+i.width,y:u};break;case a:t={x:i.x-s.width,y:u};break;default:t={x:i.x,y:i.y}}var m=c?j(c):null;if(null!=m){var g="y"===m?"height":"width";switch(f){case p:t[m]=t[m]-(i[g]/2-s[g]/2);break;case d:t[m]=t[m]+(i[g]/2-s[g]/2)}}return t}function ne(e,t){void 0===t&&(t={});var i=t,s=i.placement,a=void 0===s?e.placement:s,l=i.strategy,p=void 0===l?e.strategy:l,d=i.boundary,u=void 0===d?"clippingParents":d,m=i.rootBoundary,g=void 0===m?f:m,v=i.elementContext,y=void 0===v?h:v,b=i.altBoundary,x=void 0!==b&&b,S=i.padding,_=void 0===S?0:S,A=q("number"!=typeof _?_:P(_,c)),O=y===h?"reference":h,k=e.rects.popper,z=e.elements[x?O:y],T=re(w(z)?z:z.contextElement||R(e.elements.popper),u,g,p),M=E(e.elements.reference),B=oe({reference:M,element:k,placement:a}),L=ie(Object.assign({},k,B)),H=y===h?L:M,C={top:T.top-H.top+A.top,bottom:H.bottom-T.bottom+A.bottom,left:T.left-H.left+A.left,right:H.right-T.right+A.right},D=e.modifiersData.offset;if(y===h&&D){var N=D[a];Object.keys(C).forEach(function(e){var t=[n,o].indexOf(e)>=0?1:-1,i=[r,o].indexOf(e)>=0?"y":"x";C[e]+=N[i]*t})}return C}function ae(e,t){void 0===t&&(t={});var i=t,s=i.placement,r=i.boundary,o=i.rootBoundary,n=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,p=void 0===l?m:l,d=U(s),f=d?a?u:u.filter(function(e){return U(e)===d}):c,h=f.filter(function(e){return p.indexOf(e)>=0});0===h.length&&(h=f);var g=h.reduce(function(t,i){return t[i]=ne(e,{placement:i,boundary:r,rootBoundary:o,padding:n})[_(i)],t},{});return Object.keys(g).sort(function(e,t){return g[e]-g[t]})}var le={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name;if(!t.modifiersData[s]._skip){for(var c=i.mainAxis,d=void 0===c||c,f=i.altAxis,h=void 0===f||f,u=i.fallbackPlacements,m=i.padding,g=i.boundary,v=i.rootBoundary,y=i.altBoundary,w=i.flipVariations,b=void 0===w||w,x=i.allowedAutoPlacements,S=t.options.placement,A=_(S),O=u||(A===S||!b?[G(S)]:function(e){if(_(e)===l)return[];var t=G(e);return[Y(e),t,Y(t)]}(S)),k=[S].concat(O).reduce(function(e,i){return e.concat(_(i)===l?ae(t,{placement:i,boundary:g,rootBoundary:v,padding:m,flipVariations:b,allowedAutoPlacements:x}):i)},[]),z=t.rects.reference,T=t.rects.popper,E=new Map,M=!0,B=k[0],L=0;L<k.length;L++){var H=k[L],R=_(H),C=U(H)===p,D=[r,o].indexOf(R)>=0,N=D?"width":"height",j=ne(t,{placement:H,boundary:g,rootBoundary:v,altBoundary:y,padding:m}),I=D?C?n:a:C?o:r;z[N]>T[N]&&(I=G(I));var q=G(I),P=[];if(d&&P.push(j[R]<=0),h&&P.push(j[I]<=0,j[q]<=0),P.every(function(e){return e})){B=H,M=!1;break}E.set(H,P)}if(M)for(var F=function(e){var t=k.find(function(t){var i=E.get(t);if(i)return i.slice(0,e).every(function(e){return e})});if(t)return B=t,"break"},W=b?3:1;W>0;W--){if("break"===F(W))break}t.placement!==B&&(t.modifiersData[s]._skip=!0,t.placement=B,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function ce(e,t,i){return void 0===i&&(i={x:0,y:0}),{top:e.top-t.height-i.y,right:e.right-t.width+i.x,bottom:e.bottom-t.height+i.y,left:e.left-t.width-i.x}}function pe(e){return[r,n,o,a].some(function(t){return e[t]>=0})}var de={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,i=e.options,s=e.name,o=i.offset,l=void 0===o?[0,0]:o,c=m.reduce(function(e,i){return e[i]=function(e,t,i){var s=_(e),o=[a,r].indexOf(s)>=0?-1:1,l="function"==typeof i?i(Object.assign({},t,{placement:e})):i,c=l[0],p=l[1];return c=c||0,p=(p||0)*o,[a,n].indexOf(s)>=0?{x:p,y:c}:{x:c,y:p}}(i,t.rects,l),e},{}),p=c[t.placement],d=p.x,f=p.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=d,t.modifiersData.popperOffsets.y+=f),t.modifiersData[s]=c}};var fe={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name,l=i.mainAxis,c=void 0===l||l,d=i.altAxis,f=void 0!==d&&d,h=i.boundary,u=i.rootBoundary,m=i.altBoundary,g=i.padding,v=i.tether,y=void 0===v||v,w=i.tetherOffset,b=void 0===w?0:w,x=ne(t,{boundary:h,rootBoundary:u,padding:g,altBoundary:m}),S=_(t.placement),k=U(t.placement),z=!k,T=j(S),E="x"===T?"y":"x",B=t.modifiersData.popperOffsets,L=t.rects.reference,H=t.rects.popper,R="function"==typeof b?b(Object.assign({},t.rects,{placement:t.placement})):b,C="number"==typeof R?{mainAxis:R,altAxis:R}:Object.assign({mainAxis:0,altAxis:0},R),D=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,q={x:0,y:0};if(B){if(c){var P,F="y"===T?r:a,W="y"===T?o:n,X="y"===T?"height":"width",V=B[T],$=V+x[F],G=V-x[W],K=y?-H[X]/2:0,Y=k===p?L[X]:H[X],J=k===p?-H[X]:-L[X],Q=t.elements.arrow,Z=y&&Q?M(Q):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[F],ie=ee[W],se=I(0,L[X],Z[X]),re=z?L[X]/2-K-se-te-C.mainAxis:Y-se-te-C.mainAxis,oe=z?-L[X]/2+K+se+ie+C.mainAxis:J+se+ie+C.mainAxis,ae=t.elements.arrow&&N(t.elements.arrow),le=ae?"y"===T?ae.clientTop||0:ae.clientLeft||0:0,ce=null!=(P=null==D?void 0:D[T])?P:0,pe=V+oe-ce,de=I(y?O($,V+re-ce-le):$,V,y?A(G,pe):G);B[T]=de,q[T]=de-V}if(f){var fe,he="x"===T?r:a,ue="x"===T?o:n,me=B[E],ge="y"===E?"height":"width",ve=me+x[he],ye=me-x[ue],we=-1!==[r,a].indexOf(S),be=null!=(fe=null==D?void 0:D[E])?fe:0,xe=we?ve:me-L[ge]-H[ge]-be+C.altAxis,Se=we?me+L[ge]+H[ge]-be-C.altAxis:ye,_e=y&&we?function(e,t,i){var s=I(e,t,i);return s>i?i:s}(xe,me,Se):I(y?xe:ve,me,y?Se:ye);B[E]=_e,q[E]=_e-me}t.modifiersData[s]=q}},requiresIfExists:["offset"]};function he(e,t,i){void 0===i&&(i=!1);var s,r,o=b(t),n=b(t)&&function(e){var t=e.getBoundingClientRect(),i=k(t.width)/e.offsetWidth||1,s=k(t.height)/e.offsetHeight||1;return 1!==i||1!==s}(t),a=R(t),l=E(e,n,i),c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return(o||!o&&!i)&&(("body"!==v(t)||Z(a))&&(c=(s=t)!==y(s)&&b(s)?{scrollLeft:(r=s).scrollLeft,scrollTop:r.scrollTop}:J(s)),b(t)?((p=E(t,!0)).x+=t.clientLeft,p.y+=t.clientTop):a&&(p.x=Q(a))),{x:l.left+c.scrollLeft-p.x,y:l.top+c.scrollTop-p.y,width:l.width,height:l.height}}function ue(e){var t=new Map,i=new Set,s=[];function r(e){i.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!i.has(e)){var s=t.get(e);s&&r(s)}}),s.push(e)}return e.forEach(function(e){t.set(e.name,e)}),e.forEach(function(e){i.has(e.name)||r(e)}),s}var me={placement:"bottom",modifiers:[],strategy:"absolute"};function ge(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return!t.some(function(e){return!(e&&"function"==typeof e.getBoundingClientRect)})}function ve(e){void 0===e&&(e={});var t=e,i=t.defaultModifiers,s=void 0===i?[]:i,r=t.defaultOptions,o=void 0===r?me:r;return function(e,t,i){void 0===i&&(i=o);var r,n,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},me,o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},l=[],c=!1,p={state:a,setOptions:function(i){var r="function"==typeof i?i(a.options):i;d(),a.options=Object.assign({},o,a.options,r),a.scrollParents={reference:w(e)?te(e):e.contextElement?te(e.contextElement):[],popper:te(t)};var n,c,f=function(e){var t=ue(e);return g.reduce(function(e,i){return e.concat(t.filter(function(e){return e.phase===i}))},[])}((n=[].concat(s,a.options.modifiers),c=n.reduce(function(e,t){var i=e[t.name];return e[t.name]=i?Object.assign({},i,t,{options:Object.assign({},i.options,t.options),data:Object.assign({},i.data,t.data)}):t,e},{}),Object.keys(c).map(function(e){return c[e]})));return a.orderedModifiers=f.filter(function(e){return e.enabled}),a.orderedModifiers.forEach(function(e){var t=e.name,i=e.options,s=void 0===i?{}:i,r=e.effect;if("function"==typeof r){var o=r({state:a,name:t,instance:p,options:s}),n=function(){};l.push(o||n)}}),p.update()},forceUpdate:function(){if(!c){var e=a.elements,t=e.reference,i=e.popper;if(ge(t,i)){a.rects={reference:he(t,N(i),"fixed"===a.options.strategy),popper:M(i)},a.reset=!1,a.placement=a.options.placement,a.orderedModifiers.forEach(function(e){return a.modifiersData[e.name]=Object.assign({},e.data)});for(var s=0;s<a.orderedModifiers.length;s++)if(!0!==a.reset){var r=a.orderedModifiers[s],o=r.fn,n=r.options,l=void 0===n?{}:n,d=r.name;"function"==typeof o&&(a=o({state:a,options:l,name:d,instance:p})||a)}else a.reset=!1,s=-1}}},update:(r=function(){return new Promise(function(e){p.forceUpdate(),e(a)})},function(){return n||(n=new Promise(function(e){Promise.resolve().then(function(){n=void 0,e(r())})})),n}),destroy:function(){d(),c=!0}};if(!ge(e,t))return p;function d(){l.forEach(function(e){return e()}),l=[]}return p.setOptions(i).then(function(e){!c&&i.onFirstUpdate&&i.onFirstUpdate(e)}),p}}var ye=ve({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,i=e.instance,s=e.options,r=s.scroll,o=void 0===r||r,n=s.resize,a=void 0===n||n,l=y(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach(function(e){e.addEventListener("scroll",i.update,V)}),a&&l.addEventListener("resize",i.update,V),function(){o&&c.forEach(function(e){e.removeEventListener("scroll",i.update,V)}),a&&l.removeEventListener("resize",i.update,V)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,i=e.name;t.modifiersData[i]=oe({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,i=e.options,s=i.gpuAcceleration,r=void 0===s||s,o=i.adaptive,n=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:_(t.placement),variation:U(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:r,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,X(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:n,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,X(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},S,de,le,fe,F,{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,i=e.name,s=t.rects.reference,r=t.rects.popper,o=t.modifiersData.preventOverflow,n=ne(t,{elementContext:"reference"}),a=ne(t,{altBoundary:!0}),l=ce(n,s),c=ce(a,r,o),p=pe(l),d=pe(c);t.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":d})}}]});class we{constructor(e,t,i,s){this.anchor=e,this.popover=t,this.boundaryElement=this.setBoundary(s),this.options={placement:i,visibleClass:"data-show"},this.popover.classList.remove(this.options.visibleClass)}setBoundary(e){return"string"==typeof e?document.querySelector(e)||document.body:e||document.body}show(){this.popper&&this.popper.destroy(),this.popper=ye(this.anchor,this.popover,{tooltip:this.anchor,placement:this.options.placement,modifiers:[{name:"offset",options:{offset:[0,18]}},{name:"preventOverflow",options:{mainAxis:!0,boundary:this.boundaryElement,rootBoundary:"document",padding:16}}]})}triggerUpdate(){this.popper.update()}hide(){this.popover.classList.remove(this.options.visibleClass)}}var be=e`::slotted(*):not([onDark]),::slotted(*):not([appearance=inverse]){color:var(--ds-auro-popover-text-color)}.popover{background-color:var(--ds-auro-popover-container-color);box-shadow:var(--ds-auro-popover-boxshadow-color)}.arrow:before{background-color:var(--ds-auro-popover-container-color);box-shadow:2px 2px 1px 0 var(--ds-auro-popover-boxshadow-color)}
|
|
2
2
|
`,xe=e`.body-default{font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, .875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs{font-size:var(--wcss-body-xs-font-size, .75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:var(--wcss-body-2xs-font-size, .625rem);font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0);line-height:var(--wcss-body-2xs-line-height, .875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 450);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 450);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, .05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, .05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, .05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, .05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, .05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, .1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(.875rem, 1.1666666667vw, .875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, .1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}:focus:not(:focus-visible){outline:3px solid transparent}.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden,:host(:not([data-show])) .popover,:host([disabled]) .popover,:host([addSpace]) :host(:not([data-show])) .popover{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;padding:0;border:0}.util_insetNone{padding:0}.util_insetXxxs{padding:.125rem}.util_insetXxxs--stretch{padding:.25rem .125rem}.util_insetXxxs--squish{padding:0 .125rem}.util_insetXxs{padding:.25rem}.util_insetXxs--stretch{padding:.375rem .25rem}.util_insetXxs--squish{padding:.125rem .25rem}.util_insetXs{padding:.5rem}.util_insetXs--stretch{padding:.75rem .5rem}.util_insetXs--squish{padding:.25rem .5rem}.util_insetSm{padding:.75rem}.util_insetSm--stretch{padding:1.125rem .75rem}.util_insetSm--squish{padding:.375rem .75rem}.util_insetMd{padding:1rem}.util_insetMd--stretch{padding:1.5rem 1rem}.util_insetMd--squish{padding:.5rem 1rem}.util_insetLg{padding:1.5rem}.util_insetLg--stretch{padding:2.25rem 1.5rem}.util_insetLg--squish{padding:.75rem 1.5rem}.util_insetXl{padding:2rem}.util_insetXl--stretch{padding:3rem 2rem}.util_insetXl--squish{padding:1rem 2rem}.util_insetXxl{padding:3rem}.util_insetXxl--stretch{padding:4.5rem 3rem}.util_insetXxl--squish{padding:1.5rem 3rem}.util_insetXxxl{padding:4rem}.util_insetXxxl--stretch{padding:6rem 4rem}.util_insetXxxl--squish{padding:2rem 4rem}::slotted(*){white-space:normal}::slotted(*:hover){cursor:pointer}[data-trigger-placement]::slotted(*:hover){position:relative}[data-trigger-placement]::slotted(*:hover):before{position:absolute;left:0;display:block;width:100%;height:calc(var(--ds-size-200, 1rem) + var(--ds-size-50, .25rem));content:""}[data-trigger-placement^=top]::slotted(*:hover):before{top:calc(-1 * (var(--ds-size-200, 1rem) + var(--ds-size-50, .25rem)))}[data-trigger-placement^=bottom]::slotted(*:hover):before{bottom:calc(-1 * (var(--ds-size-200, 1rem) + var(--ds-size-50, .25rem)))}:host([data-show]) .popover{z-index:var(--ds-depth-tooltip, 400)}:host([removeSpace]) .popover{margin:calc(-1 * (var(--ds-size-50, .25rem) + 1px)) 0!important}:host([addSpace]) .popover{margin:var(--ds-size-200, 1rem) 0!important}:host([addSpace]) [data-trigger-placement]::slotted(*:hover):before{height:var(--ds-size-500, 2.5rem)}:host([addSpace]) [data-trigger-placement^=top]::slotted(*:hover):before{top:calc(-1 * var(--ds-size-500, 2.5rem))}:host([addSpace]) [data-trigger-placement^=bottom]::slotted(*:hover):before{bottom:calc(-1 * var(--ds-size-500, 2.5rem))}.popover{display:inline-block;max-width:calc(100% - var(--ds-size-400, 2rem));border-radius:var(--ds-border-radius, .375rem)}@media screen and (min-width:576px){.popover{max-width:50%}}@media screen and (min-width:768px){.popover{max-width:40%}}@media screen and (min-width:1024px){.popover{max-width:27rem}}[data-popper-placement^=top]>.arrow{bottom:calc(-1 * (var(--ds-size-100, .5rem) + var(--ds-size-25, .125rem)))}[data-popper-placement^=top]>.arrow:before{top:calc(-1 * var(--ds-size-200, 1rem));left:calc(-1 * var(--ds-size-75, .375rem));transform:rotate(45deg)}[data-popper-placement^=bottom]>.arrow{top:calc(-1 * (var(--ds-size-100, .5rem) + var(--ds-size-25, .125rem)))}[data-popper-placement^=bottom]>.arrow:before{top:var(--ds-size-50, .25rem);right:calc(-1 * var(--ds-size-200, 1rem));transform:rotate(-135deg)}.arrow{position:relative;margin-top:-var(--ds-size-100,.5rem)}.arrow:before{position:absolute;width:var(--ds-size-150, .75rem);height:var(--ds-size-150, .75rem);content:""}
|
|
3
3
|
`,Se=e`:host{--ds-auro-popover-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, .15));--ds-auro-popover-container-color: var(--ds-basic-color-surface-default, #ffffff);--ds-auro-popover-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}
|
|
4
|
-
`;class _e extends t{constructor(){super(),this.placement="top",this._onTouchStart=null,this._onTriggerMouseEnter=null,this._onTriggerMouseLeave=null,this._onTriggerFocus=null,this._onTriggerBlur=null,this._onTriggerKeydown=null,this._onHidePopover=null,this._onBodyMouseover=null,this._onSlotChange=null,this._addedTabIndex=!1}_initializeDefaults(){this.isPopoverVisible=!1,this.runtimeUtils=new s}static get properties(){return{addSpace:{type:Boolean,reflect:!0},boundary:{type:String},disabled:{type:Boolean,reflect:!0},for:{type:String,reflect:!0},placement:{type:String},removeSpace:{type:Boolean,reflect:!0}}}static get styles(){return[e`${xe}`,e`${be}`,e`${Se}`]}static register(e="auro-popover"){s.prototype.registerComponent(e,_e)}connectedCallback(){super.connectedCallback(),this.hasAttribute("role")||this.setAttribute("role","none"),this._initializeDefaults(),this._onTouchStart||(this._onTouchStart=()=>{this.toggle()}),this.addEventListener("touchstart",this._onTouchStart)}disconnectedCallback(){if(super.disconnectedCallback(),this.removeEventListener("touchstart",this._onTouchStart),this.trigger){this._onTriggerMouseEnter&&this._eventTarget.removeEventListener("mouseenter",this._onTriggerMouseEnter),this._onTriggerMouseLeave&&this._eventTarget.removeEventListener("mouseleave",this._onTriggerMouseLeave),this._onTriggerFocus&&this.trigger.removeEventListener("focusin",this._onTriggerFocus),this._onTriggerBlur&&this.trigger.removeEventListener("focusout",this._onTriggerBlur),this._onTriggerKeydown&&this.trigger.removeEventListener("keydown",this._onTriggerKeydown),this._onSlotChange&&this.shadowRoot?.querySelector("slot:not([name])")?.removeEventListener("slotchange",this._onSlotChange);for(const e of this._ariaDescriptionTargets||[this.trigger])e.removeAttribute("aria-description");this._addedTabIndex&&"0"===this.trigger.getAttribute("tabindex")&&this.trigger.removeAttribute("tabindex")}this._onHidePopover&&this.removeEventListener("hidePopover",this._onHidePopover),this._onBodyMouseover&&document.body.removeEventListener("mouseover",this._onBodyMouseover),this.popper?.popper&&"function"==typeof this.popper.popper.destroy&&(this.popper.popper.destroy(),this.popper.popper=null)}firstUpdated(){
|
|
5
|
-
<div
|
|
4
|
+
`;class _e extends t{constructor(){super(),this.placement="top",this._onTouchStart=null,this._onTriggerMouseEnter=null,this._onTriggerMouseLeave=null,this._onTriggerFocus=null,this._onTriggerBlur=null,this._onTriggerKeydown=null,this._onHidePopover=null,this._onBodyMouseover=null,this._onSlotChange=null,this._addedTabIndex=!1}_initializeDefaults(){this.isPopoverVisible=!1,this.runtimeUtils=new s}static get properties(){return{addSpace:{type:Boolean,reflect:!0},boundary:{type:String},disabled:{type:Boolean,reflect:!0},for:{type:String,reflect:!0},placement:{type:String},removeSpace:{type:Boolean,reflect:!0}}}static get styles(){return[e`${xe}`,e`${be}`,e`${Se}`]}static register(e="auro-popover"){s.prototype.registerComponent(e,_e)}connectedCallback(){super.connectedCallback(),this.hasAttribute("role")||this.setAttribute("role","none"),this._initializeDefaults(),this._onTouchStart||(this._onTouchStart=()=>{this.toggle()}),this.addEventListener("touchstart",this._onTouchStart)}disconnectedCallback(){if(super.disconnectedCallback(),this.removeEventListener("touchstart",this._onTouchStart),this.trigger){this._onTriggerMouseEnter&&this._eventTarget.removeEventListener("mouseenter",this._onTriggerMouseEnter),this._onTriggerMouseLeave&&this._eventTarget.removeEventListener("mouseleave",this._onTriggerMouseLeave),this._onTriggerFocus&&this.trigger.removeEventListener("focusin",this._onTriggerFocus),this._onTriggerBlur&&this.trigger.removeEventListener("focusout",this._onTriggerBlur),this._onTriggerKeydown&&this.trigger.removeEventListener("keydown",this._onTriggerKeydown),this._onSlotChange&&this.shadowRoot?.querySelector("slot:not([name])")?.removeEventListener("slotchange",this._onSlotChange);for(const e of this._ariaDescriptionTargets||[this.trigger])e.removeAttribute("aria-description");this._addedTabIndex&&"0"===this.trigger.getAttribute("tabindex")&&this.trigger.removeAttribute("tabindex")}this._onHidePopover&&this.removeEventListener("hidePopover",this._onHidePopover),this._onBodyMouseover&&document.body.removeEventListener("mouseover",this._onBodyMouseover),this.popper?.popper&&"function"==typeof this.popper.popper.destroy&&(this.popper.popper.destroy(),this.popper.popper=null)}firstUpdated(){this.runtimeUtils.handleComponentTagRename(this,"auro-popover"),this.for&&(this.trigger=document.querySelector(`#${this.for}`)||this.getRootNode().querySelector(`#${this.for}`)),this.trigger||([this.trigger]=this.shadowRoot.querySelector('slot[name="trigger"]').assignedElements()),this.trigger&&(this._setupAccessibility(),this._setupEventListeners())}_setupEventListeners(){this.auroPopover=this.shadowRoot.querySelector("#popover"),this.popper=new we(this.trigger,this.auroPopover,this.placement,this.boundary),this._onBodyMouseover=e=>this.handleMouseoverEvent(e),this._onTriggerMouseEnter=()=>{this.toggleShow()},this._onTriggerMouseLeave=()=>{this.toggleHide()},this._onTriggerFocus=()=>{this.toggleShow()},this._onTriggerBlur=e=>{let t=e.relatedTarget,i=!1;for(;t;){if(this.trigger.contains(t)){i=!0;break}const e=t.getRootNode();t=e instanceof ShadowRoot?e.host:null}i||this.toggleHide()},this._onTriggerKeydown=e=>{const t=e.key.toLowerCase();this.isPopoverVisible&&("tab"!==t&&"escape"!==t||this.toggleHide())," "!==t&&"enter"!==t||(" "===t&&this._addedTabIndex&&e.preventDefault(),this.toggle())},this._onHidePopover=()=>{this.toggleHide()},this._eventTarget=this.trigger.parentElement.localName===this.localName?this:this.trigger,this._eventTarget.addEventListener("mouseenter",this._onTriggerMouseEnter),this._eventTarget.addEventListener("mouseleave",this._onTriggerMouseLeave),this.trigger.addEventListener("keydown",this._onTriggerKeydown),this.trigger.addEventListener("focusin",this._onTriggerFocus),this.trigger.addEventListener("focusout",this._onTriggerBlur),this.addEventListener("hidePopover",this._onHidePopover)}_setupAccessibility(){const e=this.trigger.tabIndex>=0,t='button:not([disabled]), a[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex^="-"]), [contenteditable]:not([contenteditable="false"]), summary, iframe, audio[controls], video[controls]',i=e=>{if(e.tabIndex<0)return!1;let t=e;for(;t;){if(t.closest("[hidden], [inert]"))return!1;const e=t.getRootNode();t=e instanceof ShadowRoot?e.host:null}return!0};let s=[...this.trigger.querySelectorAll(t)].some(i);if(!s){const e=this.trigger.querySelectorAll("*");for(const r of e)if(r.localName.includes("-")&&(r.tabIndex>=0||r.shadowRoot&&[...r.shadowRoot.querySelectorAll(t)].some(i))){s=!0;break}}!s&&this.trigger.localName.includes("-")&&this.trigger.shadowRoot&&(s=[...this.trigger.shadowRoot.querySelectorAll(t)].some(i)),e||s||this.trigger.hasAttribute("tabindex")||(this.trigger.setAttribute("tabindex","0"),this._addedTabIndex=!0);const r=this.shadowRoot.querySelector("slot:not([name])"),o=()=>r.assignedNodes({flatten:!0}).map(e=>e.textContent??"").join(" ").replace(/\s+/g," ").trim();if(this._ariaDescriptionTargets=[],!e&&s){const e=[...this.trigger.querySelectorAll(t)].filter(i);this._ariaDescriptionTargets.push(...e);const s=this.trigger.querySelectorAll("*");for(const r of s)if(r.localName.includes("-")&&!e.includes(r))if(r.tabIndex>=0)this._ariaDescriptionTargets.push(r);else if(r.shadowRoot){const e=[...r.shadowRoot.querySelectorAll(t)].filter(i);for(const t of e)this._ariaDescriptionTargets.push(t)}0===this._ariaDescriptionTargets.length&&this._ariaDescriptionTargets.push(this.trigger)}else this._ariaDescriptionTargets.push(this.trigger);const n=o();for(const e of this._ariaDescriptionTargets)e.setAttribute("aria-description",n);this._onSlotChange=()=>{const e=o();for(const t of this._ariaDescriptionTargets)t?.setAttribute("aria-description",e)},r.addEventListener("slotchange",this._onSlotChange)}toggle(){this.popper&&(this.isPopoverVisible?this.toggleHide():this.toggleShow())}toggleHide(){this.isPopoverVisible=!1,this.removeAttribute("data-show"),this._popoverHidden=!0,this.requestUpdate(),this._onBodyMouseover&&document.body.removeEventListener("mouseover",this._onBodyMouseover),this.popper&&this.popper.hide()}toggleShow(){this.popper&&!this.disabled&&(this.popper.show(),this.isPopoverVisible=!0,this.setAttribute("data-show","true"),this._popoverHidden=!1,this.requestUpdate(),document.body.addEventListener("mouseover",this._onBodyMouseover))}handleMouseoverEvent(e){this.isPopoverVisible&&!e.composedPath().includes(this)&&this.toggleHide()}updated(e){e.has("boundary")&&this.popper&&(this.popper.boundaryElement=this.popper.setBoundary(this.boundary))}render(){return i`
|
|
5
|
+
<div
|
|
6
|
+
id="popover"
|
|
7
|
+
class="popover util_insetLg body-default"
|
|
8
|
+
part="popover"
|
|
9
|
+
aria-hidden="${!1!==this._popoverHidden?"true":"false"}">
|
|
6
10
|
<div id="arrow" class="arrow" data-popper-arrow></div>
|
|
7
11
|
<slot></slot>
|
|
8
12
|
</div>
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{A as AuroPopover}from"./auro-popover-
|
|
1
|
+
export{A as AuroPopover}from"./auro-popover-DvpnCiVH.js";import"lit";
|
package/dist/registered.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as r}from"./auro-popover-
|
|
1
|
+
import{A as r}from"./auro-popover-DvpnCiVH.js";import"lit";r.register();
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"================================================================================"
|
|
8
8
|
],
|
|
9
9
|
"name": "@aurodesignsystem-dev/auro-popover",
|
|
10
|
-
"version": "0.0.0-pr127.
|
|
10
|
+
"version": "0.0.0-pr127.6",
|
|
11
11
|
"description": "auro-popover HTML custom element",
|
|
12
12
|
"repository": {
|
|
13
13
|
"type": "git",
|