@covalent/components 4.13.0 → 4.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +107 -87
- package/package.json +1 -1
- package/slider.js +13 -13
- package/sliderRange.js +13 -13
- package/src/index.d.ts +2 -0
- package/src/text-lockup/text-lockup.d.ts +16 -0
- package/src/tooltip/tooltip.d.ts +27 -0
- package/src/tooltip/tooltip.foundation.d.ts +211 -0
- package/textLockup.js +5 -0
- package/textLockup.js.LICENSE.txt +23 -0
- package/tooltip.js +19 -0
- package/tooltip.js.LICENSE.txt +69 -0
@@ -0,0 +1,211 @@
|
|
1
|
+
/**
|
2
|
+
* @license
|
3
|
+
* Copyright 2020 Google Inc.
|
4
|
+
*
|
5
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
* of this software and associated documentation files (the "Software"), to deal
|
7
|
+
* in the Software without restriction, including without limitation the rights
|
8
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
* copies of the Software, and to permit persons to whom the Software is
|
10
|
+
* furnished to do so, subject to the following conditions:
|
11
|
+
*
|
12
|
+
* The above copyright notice and this permission notice shall be included in
|
13
|
+
* all copies or substantial portions of the Software.
|
14
|
+
*
|
15
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
* THE SOFTWARE.
|
22
|
+
*/
|
23
|
+
import { MDCFoundation } from '@material/base/foundation';
|
24
|
+
import { EventType, SpecificEventListener } from '@material/base/types';
|
25
|
+
import { MDCTooltipAdapter } from '@material/tooltip';
|
26
|
+
import { AnchorBoundaryType, PositionWithCaret, XPosition, YPosition } from '@material/tooltip';
|
27
|
+
export declare class MDCTooltipFoundation extends MDCFoundation<MDCTooltipAdapter> {
|
28
|
+
static get defaultAdapter(): MDCTooltipAdapter;
|
29
|
+
private interactiveTooltip;
|
30
|
+
private richTooltip;
|
31
|
+
private persistentTooltip;
|
32
|
+
private hasCaret;
|
33
|
+
private tooltipShown;
|
34
|
+
private anchorGap;
|
35
|
+
private xTooltipPos;
|
36
|
+
private yTooltipPos;
|
37
|
+
private tooltipPositionWithCaret;
|
38
|
+
private readonly minViewportTooltipThreshold;
|
39
|
+
private hideDelayMs;
|
40
|
+
private showDelayMs;
|
41
|
+
private anchorRect;
|
42
|
+
private parentRect;
|
43
|
+
private frameId;
|
44
|
+
private hideTimeout;
|
45
|
+
private showTimeout;
|
46
|
+
private readonly animFrame;
|
47
|
+
private readonly anchorBlurHandler;
|
48
|
+
private readonly documentClickHandler;
|
49
|
+
private readonly documentKeydownHandler;
|
50
|
+
private readonly tooltipMouseEnterHandler;
|
51
|
+
private readonly tooltipMouseLeaveHandler;
|
52
|
+
private readonly richTooltipFocusOutHandler;
|
53
|
+
private readonly windowScrollHandler;
|
54
|
+
private readonly windowResizeHandler;
|
55
|
+
private readonly addAncestorScrollEventListeners;
|
56
|
+
private readonly removeAncestorScrollEventListeners;
|
57
|
+
constructor(adapter?: Partial<MDCTooltipAdapter>);
|
58
|
+
init(): void;
|
59
|
+
isShown(): boolean;
|
60
|
+
isRich(): boolean;
|
61
|
+
isPersistent(): boolean;
|
62
|
+
handleAnchorMouseEnter(): void;
|
63
|
+
handleAnchorTouchstart(): void;
|
64
|
+
private preventContextMenuOnLongTouch;
|
65
|
+
handleAnchorTouchend(): void;
|
66
|
+
handleAnchorFocus(evt: FocusEvent): void;
|
67
|
+
handleAnchorMouseLeave(): void;
|
68
|
+
handleAnchorClick(): void;
|
69
|
+
handleDocumentClick(evt: MouseEvent): void;
|
70
|
+
handleKeydown(evt: KeyboardEvent): void;
|
71
|
+
private handleAnchorBlur;
|
72
|
+
private handleTooltipMouseEnter;
|
73
|
+
private handleTooltipMouseLeave;
|
74
|
+
private handleRichTooltipFocusOut;
|
75
|
+
private handleWindowScrollEvent;
|
76
|
+
/**
|
77
|
+
* On window resize or scroll, check the anchor position and size and
|
78
|
+
* repostion tooltip if necessary.
|
79
|
+
*/
|
80
|
+
private handleWindowChangeEvent;
|
81
|
+
show(): void;
|
82
|
+
hide(): void;
|
83
|
+
handleTransitionEnd(): void;
|
84
|
+
private clearAllAnimationClasses;
|
85
|
+
setTooltipPosition(position: {
|
86
|
+
xPos?: XPosition;
|
87
|
+
yPos?: YPosition;
|
88
|
+
withCaretPos?: PositionWithCaret;
|
89
|
+
}): void;
|
90
|
+
setAnchorBoundaryType(type: AnchorBoundaryType): void;
|
91
|
+
setShowDelay(delayMs: number): void;
|
92
|
+
setHideDelay(delayMs: number): void;
|
93
|
+
private isTooltipMultiline;
|
94
|
+
private positionPlainTooltip;
|
95
|
+
private positionRichTooltip;
|
96
|
+
/**
|
97
|
+
* Calculates the position of the tooltip. A tooltip will be placed beneath
|
98
|
+
* the anchor element and aligned either with the 'start'/'end' edge of the
|
99
|
+
* anchor element or the 'center'.
|
100
|
+
*
|
101
|
+
* Tooltip alignment is selected such that the tooltip maintains a threshold
|
102
|
+
* distance away from the viewport (defaulting to 'center' alignment). If the
|
103
|
+
* placement of the anchor prevents this threshold distance from being
|
104
|
+
* maintained, the tooltip is positioned so that it does not collide with the
|
105
|
+
* viewport.
|
106
|
+
*
|
107
|
+
* Users can specify an alignment, however, if this alignment results in the
|
108
|
+
* tooltip colliding with the viewport, this specification is overwritten.
|
109
|
+
*/
|
110
|
+
private calculateTooltipStyles;
|
111
|
+
/**
|
112
|
+
* Calculates the `left` distance for the tooltip.
|
113
|
+
* Returns the distance value and a string indicating the x-axis transform-
|
114
|
+
* origin that should be used when animating the tooltip.
|
115
|
+
*/
|
116
|
+
private calculateXTooltipDistance;
|
117
|
+
/**
|
118
|
+
* Given the values for the horizontal alignments of the tooltip, calculates
|
119
|
+
* which of these options would result in the tooltip maintaining the required
|
120
|
+
* threshold distance vs which would result in the tooltip staying within the
|
121
|
+
* viewport.
|
122
|
+
*
|
123
|
+
* A Set of values is returned holding the distances that would honor the
|
124
|
+
* above requirements. Following the logic for determining the tooltip
|
125
|
+
* position, if all alignments violate the threshold, then the returned Set
|
126
|
+
* contains values that keep the tooltip within the viewport.
|
127
|
+
*/
|
128
|
+
private determineValidPositionOptions;
|
129
|
+
private positionHonorsViewportThreshold;
|
130
|
+
private positionDoesntCollideWithViewport;
|
131
|
+
/**
|
132
|
+
* Calculates the `top` distance for the tooltip.
|
133
|
+
* Returns the distance value and a string indicating the y-axis transform-
|
134
|
+
* origin that should be used when animating the tooltip.
|
135
|
+
*/
|
136
|
+
private calculateYTooltipDistance;
|
137
|
+
/**
|
138
|
+
* Given the values for above/below alignment of the tooltip, calculates
|
139
|
+
* which of these options would result in the tooltip maintaining the required
|
140
|
+
* threshold distance vs which would result in the tooltip staying within the
|
141
|
+
* viewport.
|
142
|
+
*
|
143
|
+
* A Set of values is returned holding the distances that would honor the
|
144
|
+
* above requirements. Following the logic for determining the tooltip
|
145
|
+
* position, if all possible alignments violate the threshold, then the
|
146
|
+
* returned Set contains values that keep the tooltip within the viewport.
|
147
|
+
*/
|
148
|
+
private determineValidYPositionOptions;
|
149
|
+
private yPositionHonorsViewportThreshold;
|
150
|
+
private yPositionDoesntCollideWithViewport;
|
151
|
+
private calculateTooltipWithCaretStyles;
|
152
|
+
private calculateXWithCaretDistanceOptions;
|
153
|
+
private calculateYWithCaretDistanceOptions;
|
154
|
+
private repositionTooltipOnAnchorMove;
|
155
|
+
/**
|
156
|
+
* Given a list of x/y position options for a rich tooltip with caret, checks
|
157
|
+
* if valid x/y combinations of these position options are either within the
|
158
|
+
* viewport threshold, or simply within the viewport. Returns a map with the
|
159
|
+
* valid x/y position combinations that all either honor the viewport
|
160
|
+
* threshold or are simply inside within the viewport.
|
161
|
+
*/
|
162
|
+
private validateTooltipWithCaretDistances;
|
163
|
+
/**
|
164
|
+
* Method for generating a horizontal and vertical position for the tooltip if
|
165
|
+
* all other calculated values are considered invalid. This would only happen
|
166
|
+
* in situations of very small viewports/large tooltips.
|
167
|
+
*/
|
168
|
+
private generateBackupPositionOption;
|
169
|
+
/**
|
170
|
+
* Given a list of valid position options for a rich tooltip with caret,
|
171
|
+
* returns the option that should be used.
|
172
|
+
*/
|
173
|
+
private determineTooltipWithCaretDistance;
|
174
|
+
/**
|
175
|
+
* Returns the corresponding PositionWithCaret enum for the proivded
|
176
|
+
* XPositionWithCaret and YPositionWithCaret enums. This mapping exists so our
|
177
|
+
* public API accepts only PositionWithCaret enums (as all combinations of
|
178
|
+
* XPositionWithCaret and YPositionWithCaret are not valid), but internally we
|
179
|
+
* can calculate the X and Y positions of a rich tooltip with caret
|
180
|
+
* separately.
|
181
|
+
*/
|
182
|
+
private caretPositionOptionsMapping;
|
183
|
+
/**
|
184
|
+
* Given a PositionWithCaret, applies the correct styles to the caret element
|
185
|
+
* so that it is positioned properly on the rich tooltip.
|
186
|
+
* Returns the x and y positions of the caret, to be used as the
|
187
|
+
* transform-origin on the tooltip itself for entrance animations.
|
188
|
+
*/
|
189
|
+
private setCaretPositionStyles;
|
190
|
+
/**
|
191
|
+
* Given a PositionWithCaret, determines the correct styles to position the
|
192
|
+
* caret properly on the rich tooltip.
|
193
|
+
*/
|
194
|
+
private calculateCaretPositionOnTooltip;
|
195
|
+
private clearShowTimeout;
|
196
|
+
private clearHideTimeout;
|
197
|
+
/**
|
198
|
+
* Method that allows user to specify additional elements that should have a
|
199
|
+
* scroll event listener attached to it. This should be used in instances
|
200
|
+
* where the anchor element is placed inside a scrollable container, and will
|
201
|
+
* ensure that the tooltip will stay attached to the anchor on scroll.
|
202
|
+
*/
|
203
|
+
attachScrollHandler(addEventListenerFn: <K extends EventType>(event: K, handler: SpecificEventListener<K>) => void): void;
|
204
|
+
/**
|
205
|
+
* Must be used in conjunction with #attachScrollHandler. Removes the scroll
|
206
|
+
* event handler from elements on the page.
|
207
|
+
*/
|
208
|
+
removeScrollHandler(removeEventHandlerFn: <K extends EventType>(event: K, handler: SpecificEventListener<K>) => void): void;
|
209
|
+
destroy(): void;
|
210
|
+
}
|
211
|
+
export default MDCTooltipFoundation;
|
package/textLockup.js
ADDED
@@ -0,0 +1,5 @@
|
|
1
|
+
/*! For license information please see textLockup.js.LICENSE.txt */
|
2
|
+
(()=>{"use strict";var t={655:(t,e,i)=>{function s(t,e,i,s){var n,o=arguments.length,r=o<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(t,e,i,s);else for(var l=t.length-1;l>=0;l--)(n=t[l])&&(r=(o<3?n(r):o>3?n(e,i,r):n(e,i))||r);return o>3&&r&&Object.defineProperty(e,i,r),r}function n(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}i.d(e,{gn:()=>s,w6:()=>n}),Object.create,Object.create},8701:(t,e,i)=>{i.d(e,{ec:()=>h,i1:()=>d,iv:()=>a});const s=window,n=s.ShadowRoot&&(void 0===s.ShadyCSS||s.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,o=Symbol(),r=new WeakMap;class l{constructor(t,e,i){if(this._$cssResult$=!0,i!==o)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(n&&void 0===t){const i=void 0!==e&&1===e.length;i&&(t=r.get(e)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),i&&r.set(e,t))}return t}toString(){return this.cssText}}const a=(t,...e)=>{const i=1===t.length?t[0]:e.reduce(((e,i,s)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+t[s+1]),t[0]);return new l(i,t,o)},h=(t,e)=>{n?t.adoptedStyleSheets=e.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):e.forEach((e=>{const i=document.createElement("style"),n=s.litNonce;void 0!==n&&i.setAttribute("nonce",n),i.textContent=e.cssText,t.appendChild(i)}))},d=n?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const i of t.cssRules)e+=i.cssText;return(t=>new l("string"==typeof t?t:t+"",void 0,o))(e)})(t):t},5713:(t,e,i)=>{i.d(e,{M:()=>s});const s=t=>e=>"function"==typeof e?((t,e)=>(customElements.define(t,e),e))(t,e):((t,e)=>{const{kind:i,elements:s}=e;return{kind:i,elements:s,finisher(e){customElements.define(t,e)}}})(t,e)},760:(t,e,i)=>{i.d(e,{C:()=>n});const s=(t,e)=>"method"===e.kind&&e.descriptor&&!("value"in e.descriptor)?{...e,finisher(i){i.createProperty(e.key,t)}}:{kind:"field",key:Symbol(),placement:"own",descriptor:{},originalKey:e.key,initializer(){"function"==typeof e.initializer&&(this[e.key]=e.initializer.call(this))},finisher(i){i.createProperty(e.key,t)}};function n(t){return(e,i)=>void 0!==i?((t,e,i)=>{e.constructor.createProperty(i,t)})(t,e,i):s(t,e)}},7935:(t,e,i)=>{var s;null===(s=window.HTMLSlotElement)||void 0===s||s.prototype.assignedElements},43:(t,e,i)=>{i(7935)},8732:(t,e,i)=>{i.d(e,{fl:()=>p,iv:()=>n.iv});var s,n=i(8701);const o=window,r=o.trustedTypes,l=r?r.emptyScript:"",a=o.reactiveElementPolyfillSupport,h={toAttribute(t,e){switch(e){case Boolean:t=t?l:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let i=t;switch(e){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},d=(t,e)=>e!==t&&(e==e||t==t),c={attribute:!0,type:String,converter:h,reflect:!1,hasChanged:d};class p extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var e;null!==(e=this.h)&&void 0!==e||(this.h=[]),this.h.push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((e,i)=>{const s=this._$Ep(i,e);void 0!==s&&(this._$Ev.set(s,i),t.push(s))})),t}static createProperty(t,e=c){if(e.state&&(e.attribute=!1),this.finalize(),this.elementProperties.set(t,e),!e.noAccessor&&!this.prototype.hasOwnProperty(t)){const i="symbol"==typeof t?Symbol():"__"+t,s=this.getPropertyDescriptor(t,i,e);void 0!==s&&Object.defineProperty(this.prototype,t,s)}}static getPropertyDescriptor(t,e,i){return{get(){return this[e]},set(s){const n=this[t];this[e]=s,this.requestUpdate(t,n,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||c}static finalize(){if(this.hasOwnProperty("finalized"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),this.elementProperties=new Map(t.elementProperties),this._$Ev=new Map,this.hasOwnProperty("properties")){const t=this.properties,e=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const i of e)this.createProperty(i,t[i])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const i=new Set(t.flat(1/0).reverse());for(const t of i)e.unshift((0,n.i1)(t))}else void 0!==t&&e.push((0,n.i1)(t));return e}static _$Ep(t,e){const i=e.attribute;return!1===i?void 0:"string"==typeof i?i:"string"==typeof t?t.toLowerCase():void 0}u(){var t;this._$E_=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Eg(),this.requestUpdate(),null===(t=this.constructor.h)||void 0===t||t.forEach((t=>t(this)))}addController(t){var e,i;(null!==(e=this._$ES)&&void 0!==e?e:this._$ES=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(i=t.hostConnected)||void 0===i||i.call(t))}removeController(t){var e;null===(e=this._$ES)||void 0===e||e.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach(((t,e)=>{this.hasOwnProperty(e)&&(this._$Ei.set(e,this[e]),delete this[e])}))}createRenderRoot(){var t;const e=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return(0,n.ec)(e,this.constructor.elementStyles),e}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostConnected)||void 0===e?void 0:e.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostDisconnected)||void 0===e?void 0:e.call(t)}))}attributeChangedCallback(t,e,i){this._$AK(t,i)}_$EO(t,e,i=c){var s;const n=this.constructor._$Ep(t,i);if(void 0!==n&&!0===i.reflect){const o=(void 0!==(null===(s=i.converter)||void 0===s?void 0:s.toAttribute)?i.converter:h).toAttribute(e,i.type);this._$El=t,null==o?this.removeAttribute(n):this.setAttribute(n,o),this._$El=null}}_$AK(t,e){var i;const s=this.constructor,n=s._$Ev.get(t);if(void 0!==n&&this._$El!==n){const t=s.getPropertyOptions(n),o="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==(null===(i=t.converter)||void 0===i?void 0:i.fromAttribute)?t.converter:h;this._$El=n,this[n]=o.fromAttribute(e,t.type),this._$El=null}}requestUpdate(t,e,i){let s=!0;void 0!==t&&(((i=i||this.constructor.getPropertyOptions(t)).hasChanged||d)(this[t],e)?(this._$AL.has(t)||this._$AL.set(t,e),!0===i.reflect&&this._$El!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,i))):s=!1),!this.isUpdatePending&&s&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach(((t,e)=>this[e]=t)),this._$Ei=void 0);let e=!1;const i=this._$AL;try{e=this.shouldUpdate(i),e?(this.willUpdate(i),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostUpdate)||void 0===e?void 0:e.call(t)})),this.update(i)):this._$Ek()}catch(t){throw e=!1,this._$Ek(),t}e&&this._$AE(i)}willUpdate(t){}_$AE(t){var e;null===(e=this._$ES)||void 0===e||e.forEach((t=>{var e;return null===(e=t.hostUpdated)||void 0===e?void 0:e.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,e)=>this._$EO(e,this[e],t))),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}}p.finalized=!0,p.elementProperties=new Map,p.elementStyles=[],p.shadowRootOptions={mode:"open"},null==a||a({ReactiveElement:p}),(null!==(s=o.reactiveElementVersions)&&void 0!==s?s:o.reactiveElementVersions=[]).push("1.4.0")},8922:(t,e,i)=>{i.d(e,{Ld:()=>r.Ld,dy:()=>r.dy,iv:()=>o.iv,oi:()=>l});var s,n,o=i(8732),r=i(3692);class l extends o.fl{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t,e;const i=super.createRenderRoot();return null!==(t=(e=this.renderOptions).renderBefore)&&void 0!==t||(e.renderBefore=i.firstChild),i}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=(0,r.sY)(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!1)}render(){return r.Jb}}l.finalized=!0,l._$litElement$=!0,null===(s=globalThis.litElementHydrateSupport)||void 0===s||s.call(globalThis,{LitElement:l});const a=globalThis.litElementPolyfillSupport;null==a||a({LitElement:l}),(null!==(n=globalThis.litElementVersions)&&void 0!==n?n:globalThis.litElementVersions=[]).push("3.2.2")},875:(t,e,i)=>{i.d(e,{XM:()=>n,Xe:()=>o,pX:()=>s});const s={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},n=t=>(...e)=>({_$litDirective$:t,values:e});class o{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}},7499:(t,e,i)=>{i.d(e,{$:()=>o});var s=i(3692),n=i(875);const o=(0,n.XM)(class extends n.Xe{constructor(t){var e;if(super(t),t.type!==n.pX.ATTRIBUTE||"class"!==t.name||(null===(e=t.strings)||void 0===e?void 0:e.length)>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return" "+Object.keys(t).filter((e=>t[e])).join(" ")+" "}update(t,[e]){var i,n;if(void 0===this.nt){this.nt=new Set,void 0!==t.strings&&(this.st=new Set(t.strings.join(" ").split(/\s/).filter((t=>""!==t))));for(const t in e)e[t]&&!(null===(i=this.st)||void 0===i?void 0:i.has(t))&&this.nt.add(t);return this.render(e)}const o=t.element.classList;this.nt.forEach((t=>{t in e||(o.remove(t),this.nt.delete(t))}));for(const t in e){const i=!!e[t];i===this.nt.has(t)||(null===(n=this.st)||void 0===n?void 0:n.has(t))||(i?(o.add(t),this.nt.add(t)):(o.remove(t),this.nt.delete(t)))}return s.Jb}})},3692:(t,e,i)=>{var s;i.d(e,{Jb:()=>E,Ld:()=>S,dy:()=>b,sY:()=>w});const n=window,o=n.trustedTypes,r=o?o.createPolicy("lit-html",{createHTML:t=>t}):void 0,l=`lit$${(Math.random()+"").slice(9)}$`,a="?"+l,h=`<${a}>`,d=document,c=(t="")=>d.createComment(t),p=t=>null===t||"object"!=typeof t&&"function"!=typeof t,u=Array.isArray,v=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,$=/-->/g,f=/>/g,y=RegExp(">|[ \t\n\f\r](?:([^\\s\"'>=/]+)([ \t\n\f\r]*=[ \t\n\f\r]*(?:[^ \t\n\f\r\"'`<>=]|(\"|')|))|$)","g"),g=/'/g,_=/"/g,m=/^(?:script|style|textarea|title)$/i,A=t=>(e,...i)=>({_$litType$:t,strings:e,values:i}),b=A(1),E=(A(2),Symbol.for("lit-noChange")),S=Symbol.for("lit-nothing"),x=new WeakMap,w=(t,e,i)=>{var s,n;const o=null!==(s=null==i?void 0:i.renderBefore)&&void 0!==s?s:e;let r=o._$litPart$;if(void 0===r){const t=null!==(n=null==i?void 0:i.renderBefore)&&void 0!==n?n:null;o._$litPart$=r=new R(e.insertBefore(c(),t),t,void 0,null!=i?i:{})}return r._$AI(t),r},C=d.createTreeWalker(d,129,null,!1),P=(t,e)=>{const i=t.length-1,s=[];let n,o=2===e?"<svg>":"",a=v;for(let e=0;e<i;e++){const i=t[e];let r,d,c=-1,p=0;for(;p<i.length&&(a.lastIndex=p,d=a.exec(i),null!==d);)p=a.lastIndex,a===v?"!--"===d[1]?a=$:void 0!==d[1]?a=f:void 0!==d[2]?(m.test(d[2])&&(n=RegExp("</"+d[2],"g")),a=y):void 0!==d[3]&&(a=y):a===y?">"===d[0]?(a=null!=n?n:v,c=-1):void 0===d[1]?c=-2:(c=a.lastIndex-d[2].length,r=d[1],a=void 0===d[3]?y:'"'===d[3]?_:g):a===_||a===g?a=y:a===$||a===f?a=v:(a=y,n=void 0);const u=a===y&&t[e+1].startsWith("/>")?" ":"";o+=a===v?i+h:c>=0?(s.push(r),i.slice(0,c)+"$lit$"+i.slice(c)+l+u):i+l+(-2===c?(s.push(void 0),e):u)}const d=o+(t[i]||"<?>")+(2===e?"</svg>":"");if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return[void 0!==r?r.createHTML(d):d,s]};class T{constructor({strings:t,_$litType$:e},i){let s;this.parts=[];let n=0,r=0;const h=t.length-1,d=this.parts,[p,u]=P(t,e);if(this.el=T.createElement(p,i),C.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(s=C.nextNode())&&d.length<h;){if(1===s.nodeType){if(s.hasAttributes()){const t=[];for(const e of s.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith(l)){const i=u[r++];if(t.push(e),void 0!==i){const t=s.getAttribute(i.toLowerCase()+"$lit$").split(l),e=/([.?@])?(.*)/.exec(i);d.push({type:1,index:n,name:e[2],strings:t,ctor:"."===e[1]?M:"?"===e[1]?N:"@"===e[1]?z:H})}else d.push({type:6,index:n})}for(const e of t)s.removeAttribute(e)}if(m.test(s.tagName)){const t=s.textContent.split(l),e=t.length-1;if(e>0){s.textContent=o?o.emptyScript:"";for(let i=0;i<e;i++)s.append(t[i],c()),C.nextNode(),d.push({type:2,index:++n});s.append(t[e],c())}}}else if(8===s.nodeType)if(s.data===a)d.push({type:2,index:n});else{let t=-1;for(;-1!==(t=s.data.indexOf(l,t+1));)d.push({type:7,index:n}),t+=l.length-1}n++}}static createElement(t,e){const i=d.createElement("template");return i.innerHTML=t,i}}function U(t,e,i=t,s){var n,o,r,l;if(e===E)return e;let a=void 0!==s?null===(n=i._$Cl)||void 0===n?void 0:n[s]:i._$Cu;const h=p(e)?void 0:e._$litDirective$;return(null==a?void 0:a.constructor)!==h&&(null===(o=null==a?void 0:a._$AO)||void 0===o||o.call(a,!1),void 0===h?a=void 0:(a=new h(t),a._$AT(t,i,s)),void 0!==s?(null!==(r=(l=i)._$Cl)&&void 0!==r?r:l._$Cl=[])[s]=a:i._$Cu=a),void 0!==a&&(e=U(t,a._$AS(t,e.values),a,s)),e}class O{constructor(t,e){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var e;const{el:{content:i},parts:s}=this._$AD,n=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:d).importNode(i,!0);C.currentNode=n;let o=C.nextNode(),r=0,l=0,a=s[0];for(;void 0!==a;){if(r===a.index){let e;2===a.type?e=new R(o,o.nextSibling,this,t):1===a.type?e=new a.ctor(o,a.name,a.strings,this,t):6===a.type&&(e=new L(o,this,t)),this.v.push(e),a=s[++l]}r!==(null==a?void 0:a.index)&&(o=C.nextNode(),r++)}return n}m(t){let e=0;for(const i of this.v)void 0!==i&&(void 0!==i.strings?(i._$AI(t,i,e),e+=i.strings.length-2):i._$AI(t[e])),e++}}class R{constructor(t,e,i,s){var n;this.type=2,this._$AH=S,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=i,this.options=s,this._$C_=null===(n=null==s?void 0:s.isConnected)||void 0===n||n}get _$AU(){var t,e;return null!==(e=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==e?e:this._$C_}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=U(this,t,e),p(t)?t===S||null==t||""===t?(this._$AH!==S&&this._$AR(),this._$AH=S):t!==this._$AH&&t!==E&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.k(t):(t=>u(t)||"function"==typeof(null==t?void 0:t[Symbol.iterator]))(t)?this.O(t):this.$(t)}S(t,e=this._$AB){return this._$AA.parentNode.insertBefore(t,e)}k(t){this._$AH!==t&&(this._$AR(),this._$AH=this.S(t))}$(t){this._$AH!==S&&p(this._$AH)?this._$AA.nextSibling.data=t:this.k(d.createTextNode(t)),this._$AH=t}T(t){var e;const{values:i,_$litType$:s}=t,n="number"==typeof s?this._$AC(t):(void 0===s.el&&(s.el=T.createElement(s.h,this.options)),s);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===n)this._$AH.m(i);else{const t=new O(n,this),e=t.p(this.options);t.m(i),this.k(e),this._$AH=t}}_$AC(t){let e=x.get(t.strings);return void 0===e&&x.set(t.strings,e=new T(t)),e}O(t){u(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let i,s=0;for(const n of t)s===e.length?e.push(i=new R(this.S(c()),this.S(c()),this,this.options)):i=e[s],i._$AI(n),s++;s<e.length&&(this._$AR(i&&i._$AB.nextSibling,s),e.length=s)}_$AR(t=this._$AA.nextSibling,e){var i;for(null===(i=this._$AP)||void 0===i||i.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$C_=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class H{constructor(t,e,i,s,n){this.type=1,this._$AH=S,this._$AN=void 0,this.element=t,this.name=e,this._$AM=s,this.options=n,i.length>2||""!==i[0]||""!==i[1]?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=S}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,i,s){const n=this.strings;let o=!1;if(void 0===n)t=U(this,t,e,0),o=!p(t)||t!==this._$AH&&t!==E,o&&(this._$AH=t);else{const s=t;let r,l;for(t=n[0],r=0;r<n.length-1;r++)l=U(this,s[i+r],e,r),l===E&&(l=this._$AH[r]),o||(o=!p(l)||l!==this._$AH[r]),l===S?t=S:t!==S&&(t+=(null!=l?l:"")+n[r+1]),this._$AH[r]=l}o&&!s&&this.P(t)}P(t){t===S?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class M extends H{constructor(){super(...arguments),this.type=3}P(t){this.element[this.name]=t===S?void 0:t}}const k=o?o.emptyScript:"";class N extends H{constructor(){super(...arguments),this.type=4}P(t){t&&t!==S?this.element.setAttribute(this.name,k):this.element.removeAttribute(this.name)}}class z extends H{constructor(t,e,i,s,n){super(t,e,i,s,n),this.type=5}_$AI(t,e=this){var i;if((t=null!==(i=U(this,t,e,0))&&void 0!==i?i:S)===E)return;const s=this._$AH,n=t===S&&s!==S||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,o=t!==S&&(s===S||n);n&&this.element.removeEventListener(this.name,this,s),o&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,i;"function"==typeof this._$AH?this._$AH.call(null!==(i=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==i?i:this.element,t):this._$AH.handleEvent(t)}}class L{constructor(t,e,i){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=i}get _$AU(){return this._$AM._$AU}_$AI(t){U(this,t)}}const j=n.litHtmlPolyfillSupport;null==j||j(T,R),(null!==(s=n.litHtmlVersions)&&void 0!==s?s:n.litHtmlVersions=[]).push("2.3.0")},9662:(t,e,i)=>{i.d(e,{Cb:()=>n.C,Mo:()=>s.M});var s=i(5713),n=i(760);i(7935),i(43)},8810:(t,e,i)=>{i.d(e,{$:()=>s.$});var s=i(7499)},5862:(t,e,i)=>{i.d(e,{Ld:()=>s.Ld,dy:()=>s.dy,iv:()=>s.iv,oi:()=>s.oi}),i(8732),i(3692);var s=i(8922)}},e={};function i(s){var n=e[s];if(void 0!==n)return n.exports;var o=e[s]={exports:{}};return t[s](o,o.exports,i),o.exports}i.d=(t,e)=>{for(var s in e)i.o(e,s)&&!i.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),(()=>{var t=i(655),e=i(5862),s=i(9662),n=i(8810);const o=e.iv`.subtext--trailing{display:flex;flex-direction:column-reverse}.subtext{display:flex;align-items:center;--mdc-icon-size:16px;color:var(--mdc-theme-text-secondary-on-background);font-family:var(--mdc-typography-caption-font-family);font-size:var(--mdc-typography-caption-font-size);font-weight:var(--mdc-typography-caption-font-weight);line-height:var(--mdc-typography-caption-line-height);margin-bottom:2px}.subtext td-icon{margin-right:8px}slot{font-family:var(--mdc-typography-body1-font-family);font-size:var(--mdc-typography-body1-font-size);font-weight:var(--mdc-typography-body1-font-weight);line-height:var(--mdc-typography-body1-line-height);margin-bottom:8px}.scale--large .subtext{--mdc-icon-size:24px;font-family:var(--mdc-typography-body1-font-family);font-size:var(--mdc-typography-body1-font-size);font-weight:var(--mdc-typography-body1-font-weight);line-height:var(--mdc-typography-body1-line-height);margin-bottom:2px}.scale--large slot{font-family:var(--mdc-typography-headline4-font-family);font-size:var(--mdc-typography-headline4-font-size);font-weight:var(--mdc-typography-headline4-font-weight);line-height:var(--mdc-typography-headline4-line-height);margin-bottom:8px}.subtext-state--positive .subtext{color:var(--mdc-theme-positive)}.subtext-state--negative .subtext{color:var(--mdc-theme-negative)}.subtext-state--caution .subtext{color:var(--mdc-theme-caution)}.subtext-state--active .subtext{color:var(--mdc-theme-accent)}`;let r=class extends e.oi{constructor(){super(...arguments),this.scale="small",this.trailingSubText=!1}render(){const t={"subtext--trailing":this.trailingSubText};return t[`scale--${this.scale}`]=!0,this.state&&(t[`subtext-state--${this.state}`]=!0),e.dy`<span class="${(0,n.$)(t)}"
|
3
|
+
><span class="subtext">${this.renderIcon()}${this.subText}</span
|
4
|
+
><slot></slot
|
5
|
+
></span>`}renderIcon(){return this.icon?e.dy`<td-icon>${this.icon}</td-icon>`:e.Ld}};r.styles=[o],(0,t.gn)([(0,s.Cb)(),(0,t.w6)("design:type",String)],r.prototype,"subText",void 0),(0,t.gn)([(0,s.Cb)(),(0,t.w6)("design:type",String)],r.prototype,"icon",void 0),(0,t.gn)([(0,s.Cb)(),(0,t.w6)("design:type",String)],r.prototype,"state",void 0),(0,t.gn)([(0,s.Cb)(),(0,t.w6)("design:type",String)],r.prototype,"scale",void 0),(0,t.gn)([(0,s.Cb)({type:Boolean,reflect:!0}),(0,t.w6)("design:type",Object)],r.prototype,"trailingSubText",void 0),r=(0,t.gn)([(0,s.Mo)("td-text-lockup")],r)})()})();
|
@@ -0,0 +1,23 @@
|
|
1
|
+
/**
|
2
|
+
* @license
|
3
|
+
* Copyright 2017 Google LLC
|
4
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
5
|
+
*/
|
6
|
+
|
7
|
+
/**
|
8
|
+
* @license
|
9
|
+
* Copyright 2018 Google LLC
|
10
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
11
|
+
*/
|
12
|
+
|
13
|
+
/**
|
14
|
+
* @license
|
15
|
+
* Copyright 2019 Google LLC
|
16
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
17
|
+
*/
|
18
|
+
|
19
|
+
/**
|
20
|
+
* @license
|
21
|
+
* Copyright 2021 Google LLC
|
22
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
23
|
+
*/
|
package/tooltip.js
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
/*! For license information please see tooltip.js.LICENSE.txt */
|
2
|
+
(()=>{"use strict";var t={2195:(t,e,i)=>{i.d(e,{$:()=>o});var o=function(){function t(){this.rafIDs=new Map}return t.prototype.request=function(t,e){var i=this;this.cancel(t);var o=requestAnimationFrame((function(o){i.rafIDs.delete(t),e(o)}));this.rafIDs.set(t,o)},t.prototype.cancel=function(t){var e=this.rafIDs.get(t);e&&(cancelAnimationFrame(e),this.rafIDs.delete(t))},t.prototype.cancelAll=function(){var t=this;this.rafIDs.forEach((function(e,i){t.cancel(i)}))},t.prototype.getQueue=function(){var t=[];return this.rafIDs.forEach((function(e,i){t.push(i)})),t},t}()},5475:(t,e,i)=>{i.d(e,{E:()=>r});var o={animation:{prefixed:"-webkit-animation",standard:"animation"},transform:{prefixed:"-webkit-transform",standard:"transform"},transition:{prefixed:"-webkit-transition",standard:"transition"}};function r(t,e){if(function(t){return Boolean(t.document)&&"function"==typeof t.document.createElement}(t)&&e in o){var i=t.document.createElement("div"),r=o[e],n=r.standard,s=r.prefixed;return n in i.style?n:s}return e}},6308:(t,e,i)=>{i.d(e,{K:()=>o});var o=function(){function t(t){void 0===t&&(t={}),this.adapter=t}return Object.defineProperty(t,"cssClasses",{get:function(){return{}},enumerable:!1,configurable:!0}),Object.defineProperty(t,"strings",{get:function(){return{}},enumerable:!1,configurable:!0}),Object.defineProperty(t,"numbers",{get:function(){return{}},enumerable:!1,configurable:!0}),Object.defineProperty(t,"defaultAdapter",{get:function(){return{}},enumerable:!1,configurable:!0}),t.prototype.init=function(){},t.prototype.destroy=function(){},t}()},9502:(t,e,i)=>{i.d(e,{Fn:()=>o,ku:()=>a});var o={UNKNOWN:"Unknown",BACKSPACE:"Backspace",ENTER:"Enter",SPACEBAR:"Spacebar",PAGE_UP:"PageUp",PAGE_DOWN:"PageDown",END:"End",HOME:"Home",ARROW_LEFT:"ArrowLeft",ARROW_UP:"ArrowUp",ARROW_RIGHT:"ArrowRight",ARROW_DOWN:"ArrowDown",DELETE:"Delete",ESCAPE:"Escape",TAB:"Tab"},r=new Set;r.add(o.BACKSPACE),r.add(o.ENTER),r.add(o.SPACEBAR),r.add(o.PAGE_UP),r.add(o.PAGE_DOWN),r.add(o.END),r.add(o.HOME),r.add(o.ARROW_LEFT),r.add(o.ARROW_UP),r.add(o.ARROW_RIGHT),r.add(o.ARROW_DOWN),r.add(o.DELETE),r.add(o.ESCAPE),r.add(o.TAB);var n=new Map;n.set(8,o.BACKSPACE),n.set(13,o.ENTER),n.set(32,o.SPACEBAR),n.set(33,o.PAGE_UP),n.set(34,o.PAGE_DOWN),n.set(35,o.END),n.set(36,o.HOME),n.set(37,o.ARROW_LEFT),n.set(38,o.ARROW_UP),n.set(39,o.ARROW_RIGHT),n.set(40,o.ARROW_DOWN),n.set(46,o.DELETE),n.set(27,o.ESCAPE),n.set(9,o.TAB);var s=new Set;function a(t){var e=t.key;return r.has(e)?e:n.get(t.keyCode)||o.UNKNOWN}s.add(o.PAGE_UP),s.add(o.PAGE_DOWN),s.add(o.END),s.add(o.HOME),s.add(o.ARROW_LEFT),s.add(o.ARROW_UP),s.add(o.ARROW_RIGHT),s.add(o.ARROW_DOWN)},7392:(t,e,i)=>{i.d(e,{H:()=>n,q:()=>r.qN});var o=i(5862),r=i(5610);class n extends o.oi{click(){if(this.mdcRoot)return this.mdcRoot.focus(),void this.mdcRoot.click();super.click()}createFoundation(){void 0!==this.mdcFoundation&&this.mdcFoundation.destroy(),this.mdcFoundationClass&&(this.mdcFoundation=new this.mdcFoundationClass(this.createAdapter()),this.mdcFoundation.init())}firstUpdated(){this.createFoundation()}}},5610:(t,e,i)=>{function o(t){return{addClass:e=>{t.classList.add(e)},removeClass:e=>{t.classList.remove(e)},hasClass:e=>t.classList.contains(e)}}i.d(e,{qN:()=>o});let r=!1;const n=()=>{},s={get passive(){return r=!0,!1}};document.addEventListener("x",n,s),document.removeEventListener("x",n)},655:(t,e,i)=>{function o(t,e,i,o){var r,n=arguments.length,s=n<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,o);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(s=(n<3?r(s):n>3?r(e,i,s):r(e,i))||s);return n>3&&s&&Object.defineProperty(e,i,s),s}function r(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}i.d(e,{gn:()=>o,w6:()=>r}),Object.create,Object.create},8701:(t,e,i)=>{i.d(e,{ec:()=>h,i1:()=>d,iv:()=>l});const o=window,r=o.ShadowRoot&&(void 0===o.ShadyCSS||o.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,n=Symbol(),s=new WeakMap;class a{constructor(t,e,i){if(this._$cssResult$=!0,i!==n)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(r&&void 0===t){const i=void 0!==e&&1===e.length;i&&(t=s.get(e)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),i&&s.set(e,t))}return t}toString(){return this.cssText}}const l=(t,...e)=>{const i=1===t.length?t[0]:e.reduce(((e,i,o)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+t[o+1]),t[0]);return new a(i,t,n)},h=(t,e)=>{r?t.adoptedStyleSheets=e.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):e.forEach((e=>{const i=document.createElement("style"),r=o.litNonce;void 0!==r&&i.setAttribute("nonce",r),i.textContent=e.cssText,t.appendChild(i)}))},d=r?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const i of t.cssRules)e+=i.cssText;return(t=>new a("string"==typeof t?t:t+"",void 0,n))(e)})(t):t},5674:(t,e,i)=>{i.d(e,{eZ:()=>o});const o=({finisher:t,descriptor:e})=>(i,o)=>{var r;if(void 0===o){const o=null!==(r=i.originalKey)&&void 0!==r?r:i.key,n=null!=e?{kind:"method",placement:"prototype",key:o,descriptor:e(i.key)}:{...i,key:o};return null!=t&&(n.finisher=function(e){t(e,o)}),n}{const r=i.constructor;void 0!==e&&Object.defineProperty(i,o,e(o)),null==t||t(r,o)}}},5713:(t,e,i)=>{i.d(e,{M:()=>o});const o=t=>e=>"function"==typeof e?((t,e)=>(customElements.define(t,e),e))(t,e):((t,e)=>{const{kind:i,elements:o}=e;return{kind:i,elements:o,finisher(e){customElements.define(t,e)}}})(t,e)},760:(t,e,i)=>{i.d(e,{C:()=>r});const o=(t,e)=>"method"===e.kind&&e.descriptor&&!("value"in e.descriptor)?{...e,finisher(i){i.createProperty(e.key,t)}}:{kind:"field",key:Symbol(),placement:"own",descriptor:{},originalKey:e.key,initializer(){"function"==typeof e.initializer&&(this[e.key]=e.initializer.call(this))},finisher(i){i.createProperty(e.key,t)}};function r(t){return(e,i)=>void 0!==i?((t,e,i)=>{e.constructor.createProperty(i,t)})(t,e,i):o(t,e)}},7935:(t,e,i)=>{var o;null===(o=window.HTMLSlotElement)||void 0===o||o.prototype.assignedElements},43:(t,e,i)=>{i(7935)},2669:(t,e,i)=>{i.d(e,{I:()=>r});var o=i(5674);function r(t,e){return(0,o.eZ)({descriptor:i=>{const o={get(){var e,i;return null!==(i=null===(e=this.renderRoot)||void 0===e?void 0:e.querySelector(t))&&void 0!==i?i:null},enumerable:!0,configurable:!0};if(e){const e="symbol"==typeof i?Symbol():"__"+i;o.get=function(){var i,o;return void 0===this[e]&&(this[e]=null!==(o=null===(i=this.renderRoot)||void 0===i?void 0:i.querySelector(t))&&void 0!==o?o:null),this[e]}}return o}})}},8732:(t,e,i)=>{i.d(e,{fl:()=>p,iv:()=>r.iv});var o,r=i(8701);const n=window,s=n.trustedTypes,a=s?s.emptyScript:"",l=n.reactiveElementPolyfillSupport,h={toAttribute(t,e){switch(e){case Boolean:t=t?a:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let i=t;switch(e){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},d=(t,e)=>e!==t&&(e==e||t==t),c={attribute:!0,type:String,converter:h,reflect:!1,hasChanged:d};class p extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var e;null!==(e=this.h)&&void 0!==e||(this.h=[]),this.h.push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((e,i)=>{const o=this._$Ep(i,e);void 0!==o&&(this._$Ev.set(o,i),t.push(o))})),t}static createProperty(t,e=c){if(e.state&&(e.attribute=!1),this.finalize(),this.elementProperties.set(t,e),!e.noAccessor&&!this.prototype.hasOwnProperty(t)){const i="symbol"==typeof t?Symbol():"__"+t,o=this.getPropertyDescriptor(t,i,e);void 0!==o&&Object.defineProperty(this.prototype,t,o)}}static getPropertyDescriptor(t,e,i){return{get(){return this[e]},set(o){const r=this[t];this[e]=o,this.requestUpdate(t,r,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||c}static finalize(){if(this.hasOwnProperty("finalized"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),this.elementProperties=new Map(t.elementProperties),this._$Ev=new Map,this.hasOwnProperty("properties")){const t=this.properties,e=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const i of e)this.createProperty(i,t[i])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const i=new Set(t.flat(1/0).reverse());for(const t of i)e.unshift((0,r.i1)(t))}else void 0!==t&&e.push((0,r.i1)(t));return e}static _$Ep(t,e){const i=e.attribute;return!1===i?void 0:"string"==typeof i?i:"string"==typeof t?t.toLowerCase():void 0}u(){var t;this._$E_=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Eg(),this.requestUpdate(),null===(t=this.constructor.h)||void 0===t||t.forEach((t=>t(this)))}addController(t){var e,i;(null!==(e=this._$ES)&&void 0!==e?e:this._$ES=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(i=t.hostConnected)||void 0===i||i.call(t))}removeController(t){var e;null===(e=this._$ES)||void 0===e||e.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach(((t,e)=>{this.hasOwnProperty(e)&&(this._$Ei.set(e,this[e]),delete this[e])}))}createRenderRoot(){var t;const e=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return(0,r.ec)(e,this.constructor.elementStyles),e}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostConnected)||void 0===e?void 0:e.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostDisconnected)||void 0===e?void 0:e.call(t)}))}attributeChangedCallback(t,e,i){this._$AK(t,i)}_$EO(t,e,i=c){var o;const r=this.constructor._$Ep(t,i);if(void 0!==r&&!0===i.reflect){const n=(void 0!==(null===(o=i.converter)||void 0===o?void 0:o.toAttribute)?i.converter:h).toAttribute(e,i.type);this._$El=t,null==n?this.removeAttribute(r):this.setAttribute(r,n),this._$El=null}}_$AK(t,e){var i;const o=this.constructor,r=o._$Ev.get(t);if(void 0!==r&&this._$El!==r){const t=o.getPropertyOptions(r),n="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==(null===(i=t.converter)||void 0===i?void 0:i.fromAttribute)?t.converter:h;this._$El=r,this[r]=n.fromAttribute(e,t.type),this._$El=null}}requestUpdate(t,e,i){let o=!0;void 0!==t&&(((i=i||this.constructor.getPropertyOptions(t)).hasChanged||d)(this[t],e)?(this._$AL.has(t)||this._$AL.set(t,e),!0===i.reflect&&this._$El!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,i))):o=!1),!this.isUpdatePending&&o&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach(((t,e)=>this[e]=t)),this._$Ei=void 0);let e=!1;const i=this._$AL;try{e=this.shouldUpdate(i),e?(this.willUpdate(i),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostUpdate)||void 0===e?void 0:e.call(t)})),this.update(i)):this._$Ek()}catch(t){throw e=!1,this._$Ek(),t}e&&this._$AE(i)}willUpdate(t){}_$AE(t){var e;null===(e=this._$ES)||void 0===e||e.forEach((t=>{var e;return null===(e=t.hostUpdated)||void 0===e?void 0:e.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,e)=>this._$EO(e,this[e],t))),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}}p.finalized=!0,p.elementProperties=new Map,p.elementStyles=[],p.shadowRootOptions={mode:"open"},null==l||l({ReactiveElement:p}),(null!==(o=n.reactiveElementVersions)&&void 0!==o?o:n.reactiveElementVersions=[]).push("1.4.0")},8922:(t,e,i)=>{i.d(e,{dy:()=>s.dy,iv:()=>n.iv,oi:()=>a});var o,r,n=i(8732),s=i(3692);class a extends n.fl{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t,e;const i=super.createRenderRoot();return null!==(t=(e=this.renderOptions).renderBefore)&&void 0!==t||(e.renderBefore=i.firstChild),i}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=(0,s.sY)(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!1)}render(){return s.Jb}}a.finalized=!0,a._$litElement$=!0,null===(o=globalThis.litElementHydrateSupport)||void 0===o||o.call(globalThis,{LitElement:a});const l=globalThis.litElementPolyfillSupport;null==l||l({LitElement:a}),(null!==(r=globalThis.litElementVersions)&&void 0!==r?r:globalThis.litElementVersions=[]).push("3.2.2")},3692:(t,e,i)=>{var o;i.d(e,{Jb:()=>w,dy:()=>A,sY:()=>O});const r=window,n=r.trustedTypes,s=n?n.createPolicy("lit-html",{createHTML:t=>t}):void 0,a=`lit$${(Math.random()+"").slice(9)}$`,l="?"+a,h=`<${l}>`,d=document,c=(t="")=>d.createComment(t),p=t=>null===t||"object"!=typeof t&&"function"!=typeof t,u=Array.isArray,m=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,f=/-->/g,g=/>/g,E=RegExp(">|[ \t\n\f\r](?:([^\\s\"'>=/]+)([ \t\n\f\r]*=[ \t\n\f\r]*(?:[^ \t\n\f\r\"'`<>=]|(\"|')|))|$)","g"),T=/'/g,v=/"/g,_=/^(?:script|style|textarea|title)$/i,y=t=>(e,...i)=>({_$litType$:t,strings:e,values:i}),A=y(1),w=(y(2),Symbol.for("lit-noChange")),S=Symbol.for("lit-nothing"),x=new WeakMap,O=(t,e,i)=>{var o,r;const n=null!==(o=null==i?void 0:i.renderBefore)&&void 0!==o?o:e;let s=n._$litPart$;if(void 0===s){const t=null!==(r=null==i?void 0:i.renderBefore)&&void 0!==r?r:null;n._$litPart$=s=new P(e.insertBefore(c(),t),t,void 0,null!=i?i:{})}return s._$AI(t),s},C=d.createTreeWalker(d,129,null,!1),D=(t,e)=>{const i=t.length-1,o=[];let r,n=2===e?"<svg>":"",l=m;for(let e=0;e<i;e++){const i=t[e];let s,d,c=-1,p=0;for(;p<i.length&&(l.lastIndex=p,d=l.exec(i),null!==d);)p=l.lastIndex,l===m?"!--"===d[1]?l=f:void 0!==d[1]?l=g:void 0!==d[2]?(_.test(d[2])&&(r=RegExp("</"+d[2],"g")),l=E):void 0!==d[3]&&(l=E):l===E?">"===d[0]?(l=null!=r?r:m,c=-1):void 0===d[1]?c=-2:(c=l.lastIndex-d[2].length,s=d[1],l=void 0===d[3]?E:'"'===d[3]?v:T):l===v||l===T?l=E:l===f||l===g?l=m:(l=E,r=void 0);const u=l===E&&t[e+1].startsWith("/>")?" ":"";n+=l===m?i+h:c>=0?(o.push(s),i.slice(0,c)+"$lit$"+i.slice(c)+a+u):i+a+(-2===c?(o.push(void 0),e):u)}const d=n+(t[i]||"<?>")+(2===e?"</svg>":"");if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return[void 0!==s?s.createHTML(d):d,o]};class b{constructor({strings:t,_$litType$:e},i){let o;this.parts=[];let r=0,s=0;const h=t.length-1,d=this.parts,[p,u]=D(t,e);if(this.el=b.createElement(p,i),C.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(o=C.nextNode())&&d.length<h;){if(1===o.nodeType){if(o.hasAttributes()){const t=[];for(const e of o.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith(a)){const i=u[s++];if(t.push(e),void 0!==i){const t=o.getAttribute(i.toLowerCase()+"$lit$").split(a),e=/([.?@])?(.*)/.exec(i);d.push({type:1,index:r,name:e[2],strings:t,ctor:"."===e[1]?N:"?"===e[1]?W:"@"===e[1]?B:H})}else d.push({type:6,index:r})}for(const e of t)o.removeAttribute(e)}if(_.test(o.tagName)){const t=o.textContent.split(a),e=t.length-1;if(e>0){o.textContent=n?n.emptyScript:"";for(let i=0;i<e;i++)o.append(t[i],c()),C.nextNode(),d.push({type:2,index:++r});o.append(t[e],c())}}}else if(8===o.nodeType)if(o.data===l)d.push({type:2,index:r});else{let t=-1;for(;-1!==(t=o.data.indexOf(a,t+1));)d.push({type:7,index:r}),t+=a.length-1}r++}}static createElement(t,e){const i=d.createElement("template");return i.innerHTML=t,i}}function R(t,e,i=t,o){var r,n,s,a;if(e===w)return e;let l=void 0!==o?null===(r=i._$Cl)||void 0===r?void 0:r[o]:i._$Cu;const h=p(e)?void 0:e._$litDirective$;return(null==l?void 0:l.constructor)!==h&&(null===(n=null==l?void 0:l._$AO)||void 0===n||n.call(l,!1),void 0===h?l=void 0:(l=new h(t),l._$AT(t,i,o)),void 0!==o?(null!==(s=(a=i)._$Cl)&&void 0!==s?s:a._$Cl=[])[o]=l:i._$Cu=l),void 0!==l&&(e=R(t,l._$AS(t,e.values),l,o)),e}class ${constructor(t,e){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var e;const{el:{content:i},parts:o}=this._$AD,r=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:d).importNode(i,!0);C.currentNode=r;let n=C.nextNode(),s=0,a=0,l=o[0];for(;void 0!==l;){if(s===l.index){let e;2===l.type?e=new P(n,n.nextSibling,this,t):1===l.type?e=new l.ctor(n,l.name,l.strings,this,t):6===l.type&&(e=new L(n,this,t)),this.v.push(e),l=o[++a]}s!==(null==l?void 0:l.index)&&(n=C.nextNode(),s++)}return r}m(t){let e=0;for(const i of this.v)void 0!==i&&(void 0!==i.strings?(i._$AI(t,i,e),e+=i.strings.length-2):i._$AI(t[e])),e++}}class P{constructor(t,e,i,o){var r;this.type=2,this._$AH=S,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=i,this.options=o,this._$C_=null===(r=null==o?void 0:o.isConnected)||void 0===r||r}get _$AU(){var t,e;return null!==(e=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==e?e:this._$C_}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=R(this,t,e),p(t)?t===S||null==t||""===t?(this._$AH!==S&&this._$AR(),this._$AH=S):t!==this._$AH&&t!==w&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.k(t):(t=>u(t)||"function"==typeof(null==t?void 0:t[Symbol.iterator]))(t)?this.O(t):this.$(t)}S(t,e=this._$AB){return this._$AA.parentNode.insertBefore(t,e)}k(t){this._$AH!==t&&(this._$AR(),this._$AH=this.S(t))}$(t){this._$AH!==S&&p(this._$AH)?this._$AA.nextSibling.data=t:this.k(d.createTextNode(t)),this._$AH=t}T(t){var e;const{values:i,_$litType$:o}=t,r="number"==typeof o?this._$AC(t):(void 0===o.el&&(o.el=b.createElement(o.h,this.options)),o);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===r)this._$AH.m(i);else{const t=new $(r,this),e=t.p(this.options);t.m(i),this.k(e),this._$AH=t}}_$AC(t){let e=x.get(t.strings);return void 0===e&&x.set(t.strings,e=new b(t)),e}O(t){u(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let i,o=0;for(const r of t)o===e.length?e.push(i=new P(this.S(c()),this.S(c()),this,this.options)):i=e[o],i._$AI(r),o++;o<e.length&&(this._$AR(i&&i._$AB.nextSibling,o),e.length=o)}_$AR(t=this._$AA.nextSibling,e){var i;for(null===(i=this._$AP)||void 0===i||i.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$C_=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class H{constructor(t,e,i,o,r){this.type=1,this._$AH=S,this._$AN=void 0,this.element=t,this.name=e,this._$AM=o,this.options=r,i.length>2||""!==i[0]||""!==i[1]?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=S}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,i,o){const r=this.strings;let n=!1;if(void 0===r)t=R(this,t,e,0),n=!p(t)||t!==this._$AH&&t!==w,n&&(this._$AH=t);else{const o=t;let s,a;for(t=r[0],s=0;s<r.length-1;s++)a=R(this,o[i+s],e,s),a===w&&(a=this._$AH[s]),n||(n=!p(a)||a!==this._$AH[s]),a===S?t=S:t!==S&&(t+=(null!=a?a:"")+r[s+1]),this._$AH[s]=a}n&&!o&&this.P(t)}P(t){t===S?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class N extends H{constructor(){super(...arguments),this.type=3}P(t){this.element[this.name]=t===S?void 0:t}}const I=n?n.emptyScript:"";class W extends H{constructor(){super(...arguments),this.type=4}P(t){t&&t!==S?this.element.setAttribute(this.name,I):this.element.removeAttribute(this.name)}}class B extends H{constructor(t,e,i,o,r){super(t,e,i,o,r),this.type=5}_$AI(t,e=this){var i;if((t=null!==(i=R(this,t,e,0))&&void 0!==i?i:S)===w)return;const o=this._$AH,r=t===S&&o!==S||t.capture!==o.capture||t.once!==o.once||t.passive!==o.passive,n=t!==S&&(o===S||r);r&&this.element.removeEventListener(this.name,this,o),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,i;"function"==typeof this._$AH?this._$AH.call(null!==(i=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==i?i:this.element,t):this._$AH.handleEvent(t)}}class L{constructor(t,e,i){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=i}get _$AU(){return this._$AM._$AU}_$AI(t){R(this,t)}}const M=r.litHtmlPolyfillSupport;null==M||M(b,P),(null!==(o=r.litHtmlVersions)&&void 0!==o?o:r.litHtmlVersions=[]).push("2.3.0")},9662:(t,e,i)=>{i.d(e,{Cb:()=>r.C,IO:()=>n.I,Mo:()=>o.M});var o=i(5713),r=i(760),n=i(2669);i(7935),i(43)},5862:(t,e,i)=>{i.d(e,{dy:()=>o.dy,iv:()=>o.iv,oi:()=>o.oi}),i(8732),i(3692);var o=i(8922)}},e={};function i(o){var r=e[o];if(void 0!==r)return r.exports;var n=e[o]={exports:{}};return t[o](n,n.exports,i),n.exports}i.d=(t,e)=>{for(var o in e)i.o(e,o)&&!i.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),(()=>{var t,e=i(655),o=i(7392);!function(t){t.RICH="mdc-tooltip--rich",t.SHOWN="mdc-tooltip--shown",t.SHOWING="mdc-tooltip--showing",t.SHOWING_TRANSITION="mdc-tooltip--showing-transition",t.HIDE="mdc-tooltip--hide",t.HIDE_TRANSITION="mdc-tooltip--hide-transition",t.MULTILINE_TOOLTIP="mdc-tooltip--multiline",t.SURFACE="mdc-tooltip__surface",t.SURFACE_ANIMATION="mdc-tooltip__surface-animation",t.TOOLTIP_CARET_TOP="mdc-tooltip__caret-surface-top",t.TOOLTIP_CARET_BOTTOM="mdc-tooltip__caret-surface-bottom"}(t||(t={}));var r,n,s;!function(t){t[t.DETECTED=0]="DETECTED",t[t.START=1]="START",t[t.CENTER=2]="CENTER",t[t.END=3]="END"}(r||(r={})),function(t){t[t.DETECTED=0]="DETECTED",t[t.ABOVE=1]="ABOVE",t[t.BELOW=2]="BELOW"}(n||(n={})),function(t){t[t.BOUNDED=0]="BOUNDED",t[t.UNBOUNDED=1]="UNBOUNDED"}(s||(s={}));var a,l,h,d="left",c="right",p="center",u="top",m="bottom";!function(t){t[t.DETECTED=0]="DETECTED",t[t.ABOVE_START=1]="ABOVE_START",t[t.ABOVE_CENTER=2]="ABOVE_CENTER",t[t.ABOVE_END=3]="ABOVE_END",t[t.TOP_SIDE_START=4]="TOP_SIDE_START",t[t.CENTER_SIDE_START=5]="CENTER_SIDE_START",t[t.BOTTOM_SIDE_START=6]="BOTTOM_SIDE_START",t[t.TOP_SIDE_END=7]="TOP_SIDE_END",t[t.CENTER_SIDE_END=8]="CENTER_SIDE_END",t[t.BOTTOM_SIDE_END=9]="BOTTOM_SIDE_END",t[t.BELOW_START=10]="BELOW_START",t[t.BELOW_CENTER=11]="BELOW_CENTER",t[t.BELOW_END=12]="BELOW_END"}(a||(a={})),function(t){t[t.ABOVE=1]="ABOVE",t[t.BELOW=2]="BELOW",t[t.SIDE_TOP=3]="SIDE_TOP",t[t.SIDE_CENTER=4]="SIDE_CENTER",t[t.SIDE_BOTTOM=5]="SIDE_BOTTOM"}(l||(l={})),function(t){t[t.START=1]="START",t[t.CENTER=2]="CENTER",t[t.END=3]="END",t[t.SIDE_START=4]="SIDE_START",t[t.SIDE_END=5]="SIDE_END"}(h||(h={}));var f=i(9662),g=i(5862),E=i(2195),T=i(5475),v=i(6308),_=i(9502);const{RICH:y,SHOWN:A,SHOWING:w,SHOWING_TRANSITION:S,HIDE:x,HIDE_TRANSITION:O,MULTILINE_TOOLTIP:C}=t;var D;!function(t){t.POLL_ANCHOR="poll_anchor"}(D||(D={}));const b="undefined"!=typeof window;class R extends v.K{constructor(t){super(Object.assign(Object.assign({},R.defaultAdapter),t)),this.tooltipShown=!1,this.anchorGap=4,this.xTooltipPos=r.DETECTED,this.yTooltipPos=n.DETECTED,this.tooltipPositionWithCaret=a.DETECTED,this.minViewportTooltipThreshold=8,this.hideDelayMs=600,this.showDelayMs=500,this.anchorRect=null,this.parentRect=null,this.frameId=null,this.hideTimeout=null,this.showTimeout=null,this.addAncestorScrollEventListeners=new Array,this.removeAncestorScrollEventListeners=new Array,this.animFrame=new E.$,this.anchorBlurHandler=t=>{this.handleAnchorBlur(t)},this.documentClickHandler=t=>{this.handleDocumentClick(t)},this.documentKeydownHandler=t=>{this.handleKeydown(t)},this.tooltipMouseEnterHandler=()=>{this.handleTooltipMouseEnter()},this.tooltipMouseLeaveHandler=()=>{this.handleTooltipMouseLeave()},this.richTooltipFocusOutHandler=t=>{this.handleRichTooltipFocusOut(t)},this.windowScrollHandler=()=>{this.handleWindowScrollEvent()},this.windowResizeHandler=()=>{this.handleWindowChangeEvent()}}static get defaultAdapter(){return{getAttribute:()=>null,setAttribute:()=>{},removeAttribute:()=>{},addClass:()=>{},hasClass:()=>!1,removeClass:()=>{},getComputedStyleProperty:()=>"",setStyleProperty:()=>{},setSurfaceAnimationStyleProperty:()=>{},getViewportWidth:()=>0,getViewportHeight:()=>0,getTooltipSize:()=>({width:0,height:0}),getAnchorBoundingRect:()=>({top:0,right:0,bottom:0,left:0,width:0,height:0}),getParentBoundingRect:()=>({top:0,right:0,bottom:0,left:0,width:0,height:0}),getAnchorAttribute:()=>null,setAnchorAttribute:()=>null,isRTL:()=>!1,anchorContainsElement:()=>!1,tooltipContainsElement:()=>!1,focusAnchorElement:()=>{},registerEventHandler:()=>{},deregisterEventHandler:()=>{},registerAnchorEventHandler:()=>{},deregisterAnchorEventHandler:()=>{},registerDocumentEventHandler:()=>{},deregisterDocumentEventHandler:()=>{},registerWindowEventHandler:()=>{},deregisterWindowEventHandler:()=>{},notifyHidden:()=>{},getTooltipCaretBoundingRect:()=>({top:0,right:0,bottom:0,left:0,width:0,height:0}),setTooltipCaretStyle:()=>{},clearTooltipCaretStyles:()=>{},getActiveElement:()=>null}}init(){this.richTooltip=this.adapter.hasClass(y),this.persistentTooltip="true"===this.adapter.getAttribute("data-mdc-tooltip-persistent"),this.interactiveTooltip=!!this.adapter.getAnchorAttribute("aria-expanded")&&"dialog"===this.adapter.getAnchorAttribute("aria-haspopup"),this.hasCaret=this.richTooltip&&"true"===this.adapter.getAttribute("data-mdc-tooltip-has-caret")}isShown(){return this.tooltipShown}isRich(){return this.richTooltip}isPersistent(){return this.persistentTooltip}handleAnchorMouseEnter(){this.tooltipShown?this.show():(this.clearHideTimeout(),this.showTimeout=setTimeout((()=>{this.show()}),this.showDelayMs))}handleAnchorTouchstart(){this.showTimeout=setTimeout((()=>{this.show()}),this.showDelayMs),this.adapter.registerWindowEventHandler("contextmenu",this.preventContextMenuOnLongTouch)}preventContextMenuOnLongTouch(t){t.preventDefault()}handleAnchorTouchend(){this.clearShowTimeout(),this.isShown()||this.adapter.deregisterWindowEventHandler("contextmenu",this.preventContextMenuOnLongTouch)}handleAnchorFocus(t){const{relatedTarget:e}=t;e instanceof HTMLElement&&this.adapter.tooltipContainsElement(e)||(this.showTimeout=setTimeout((()=>{this.show()}),this.showDelayMs))}handleAnchorMouseLeave(){this.clearShowTimeout(),this.hideTimeout=setTimeout((()=>{this.hide()}),this.hideDelayMs)}handleAnchorClick(){this.tooltipShown?this.hide():this.show()}handleDocumentClick(t){const e=t.target instanceof HTMLElement&&(this.adapter.anchorContainsElement(t.target)||this.adapter.tooltipContainsElement(t.target));this.richTooltip&&this.persistentTooltip&&e||this.hide()}handleKeydown(t){if((0,_.ku)(t)===_.Fn.ESCAPE){const t=this.adapter.getActiveElement();t instanceof HTMLElement&&this.adapter.tooltipContainsElement(t)&&this.adapter.focusAnchorElement(),this.hide()}}handleAnchorBlur(t){if(this.richTooltip){if(t.relatedTarget instanceof HTMLElement&&this.adapter.tooltipContainsElement(t.relatedTarget))return;if(null===t.relatedTarget&&this.interactiveTooltip)return}this.hide()}handleTooltipMouseEnter(){this.show()}handleTooltipMouseLeave(){this.clearShowTimeout(),this.hideTimeout=setTimeout((()=>{this.hide()}),this.hideDelayMs)}handleRichTooltipFocusOut(t){t.relatedTarget instanceof HTMLElement&&(this.adapter.anchorContainsElement(t.relatedTarget)||this.adapter.tooltipContainsElement(t.relatedTarget))||null===t.relatedTarget&&this.interactiveTooltip||this.hide()}handleWindowScrollEvent(){this.persistentTooltip?this.handleWindowChangeEvent():this.hide()}handleWindowChangeEvent(){this.animFrame.request(D.POLL_ANCHOR,(()=>{this.repositionTooltipOnAnchorMove()}))}show(){if(this.clearHideTimeout(),this.clearShowTimeout(),!this.tooltipShown){this.tooltipShown=!0,this.adapter.removeAttribute("aria-hidden"),this.richTooltip&&(this.interactiveTooltip&&this.adapter.setAnchorAttribute("aria-expanded","true"),this.adapter.registerEventHandler("focusout",this.richTooltipFocusOutHandler)),this.persistentTooltip||(this.adapter.registerEventHandler("mouseenter",this.tooltipMouseEnterHandler),this.adapter.registerEventHandler("mouseleave",this.tooltipMouseLeaveHandler)),this.adapter.removeClass(x),this.adapter.addClass(w),this.isTooltipMultiline()&&!this.richTooltip&&this.adapter.addClass(C),this.anchorRect=this.adapter.getAnchorBoundingRect(),this.parentRect=this.adapter.getParentBoundingRect(),this.richTooltip?this.positionRichTooltip():this.positionPlainTooltip(),this.adapter.registerAnchorEventHandler("blur",this.anchorBlurHandler),this.adapter.registerDocumentEventHandler("click",this.documentClickHandler),this.adapter.registerDocumentEventHandler("keydown",this.documentKeydownHandler),this.adapter.registerWindowEventHandler("scroll",this.windowScrollHandler),this.adapter.registerWindowEventHandler("resize",this.windowResizeHandler);for(const t of this.addAncestorScrollEventListeners)t();this.frameId=requestAnimationFrame((()=>{this.clearAllAnimationClasses(),this.adapter.addClass(A),this.adapter.addClass(S)}))}}hide(){if(this.clearHideTimeout(),this.clearShowTimeout(),this.tooltipShown){this.frameId&&cancelAnimationFrame(this.frameId),this.tooltipShown=!1,this.adapter.setAttribute("aria-hidden","true"),this.adapter.deregisterEventHandler("focusout",this.richTooltipFocusOutHandler),this.richTooltip&&this.interactiveTooltip&&this.adapter.setAnchorAttribute("aria-expanded","false"),this.persistentTooltip||(this.adapter.deregisterEventHandler("mouseenter",this.tooltipMouseEnterHandler),this.adapter.deregisterEventHandler("mouseleave",this.tooltipMouseLeaveHandler)),this.clearAllAnimationClasses(),this.adapter.addClass(x),this.adapter.addClass(O),this.adapter.removeClass(A),this.adapter.deregisterAnchorEventHandler("blur",this.anchorBlurHandler),this.adapter.deregisterDocumentEventHandler("click",this.documentClickHandler),this.adapter.deregisterDocumentEventHandler("keydown",this.documentKeydownHandler),this.adapter.deregisterWindowEventHandler("scroll",this.windowScrollHandler),this.adapter.deregisterWindowEventHandler("resize",this.windowResizeHandler),this.adapter.deregisterWindowEventHandler("contextmenu",this.preventContextMenuOnLongTouch);for(const t of this.removeAncestorScrollEventListeners)t()}}handleTransitionEnd(){const t=this.adapter.hasClass(x);this.adapter.removeClass(w),this.adapter.removeClass(S),this.adapter.removeClass(x),this.adapter.removeClass(O),t&&null===this.showTimeout&&this.adapter.notifyHidden()}clearAllAnimationClasses(){this.adapter.removeClass(S),this.adapter.removeClass(O)}setTooltipPosition(t){const{xPos:e,yPos:i,withCaretPos:o}=t;this.hasCaret&&o?this.tooltipPositionWithCaret=o:(e&&(this.xTooltipPos=e),i&&(this.yTooltipPos=i))}setAnchorBoundaryType(t){t===s.UNBOUNDED?this.anchorGap=8:this.anchorGap=4}setShowDelay(t){this.showDelayMs=t}setHideDelay(t){this.hideDelayMs=t}isTooltipMultiline(){const t=this.adapter.getTooltipSize();return t.height>24&&t.width>=200}positionPlainTooltip(){const{top:t,yTransformOrigin:e,left:i,xTransformOrigin:o}=this.calculateTooltipStyles(this.anchorRect),r=b?(0,T.E)(window,"transform"):"transform";this.adapter.setSurfaceAnimationStyleProperty(`${r}-origin`,`${o} ${e}`),this.adapter.setStyleProperty("top",`${t}px`),this.adapter.setStyleProperty("left",`${i}px`)}positionRichTooltip(){var t,e,i,o;const r=this.adapter.getComputedStyleProperty("width");this.adapter.setStyleProperty("width",r);const{top:n,yTransformOrigin:s,left:a,xTransformOrigin:l}=this.hasCaret?this.calculateTooltipWithCaretStyles(this.anchorRect):this.calculateTooltipStyles(this.anchorRect),h=b?(0,T.E)(window,"transform"):"transform";this.adapter.setSurfaceAnimationStyleProperty(`${h}-origin`,`${l} ${s}`);const d=a-(null!==(e=null===(t=this.parentRect)||void 0===t?void 0:t.left)&&void 0!==e?e:0),c=n-(null!==(o=null===(i=this.parentRect)||void 0===i?void 0:i.top)&&void 0!==o?o:0);this.adapter.setStyleProperty("top",`${c}px`),this.adapter.setStyleProperty("left",`${d}px`)}calculateTooltipStyles(t){if(!t)return{top:0,left:0};const e=this.adapter.getTooltipSize(),i=this.calculateYTooltipDistance(t,e.height),o=this.calculateXTooltipDistance(t,e.width);return{top:i.distance,yTransformOrigin:i.yTransformOrigin,left:o.distance,xTransformOrigin:o.xTransformOrigin}}calculateXTooltipDistance(t,e){const i=!this.adapter.isRTL();let o,n,s,a,l;this.richTooltip?(o=i?t.left-e:t.right,n=i?t.right:t.left-e,a=i?c:d,l=i?d:c):(o=i?t.left:t.right-e,n=i?t.right-e:t.left,s=t.left+(t.width-e)/2,a=i?d:c,l=i?c:d);const h=this.richTooltip?this.determineValidPositionOptions(o,n):this.determineValidPositionOptions(s,o,n);if(this.xTooltipPos===r.START&&h.has(o))return{distance:o,xTransformOrigin:a};if(this.xTooltipPos===r.END&&h.has(n))return{distance:n,xTransformOrigin:l};if(this.xTooltipPos===r.CENTER&&h.has(s))return{distance:s,xTransformOrigin:p};const u=(this.richTooltip?[{distance:n,xTransformOrigin:l},{distance:o,xTransformOrigin:a}]:[{distance:s,xTransformOrigin:p},{distance:o,xTransformOrigin:a},{distance:n,xTransformOrigin:l}]).find((({distance:t})=>h.has(t)));return u||(t.left<0?{distance:this.minViewportTooltipThreshold,xTransformOrigin:d}:{distance:this.adapter.getViewportWidth()-(e+this.minViewportTooltipThreshold),xTransformOrigin:c})}determineValidPositionOptions(...t){const e=new Set,i=new Set;for(const o of t)this.positionHonorsViewportThreshold(o)?e.add(o):this.positionDoesntCollideWithViewport(o)&&i.add(o);return e.size?e:i}positionHonorsViewportThreshold(t){const e=this.adapter.getViewportWidth();return t+this.adapter.getTooltipSize().width<=e-this.minViewportTooltipThreshold&&t>=this.minViewportTooltipThreshold}positionDoesntCollideWithViewport(t){const e=this.adapter.getViewportWidth();return t+this.adapter.getTooltipSize().width<=e&&t>=0}calculateYTooltipDistance(t,e){const i=t.bottom+this.anchorGap,o=t.top-(this.anchorGap+e),r=this.determineValidYPositionOptions(o,i);return this.yTooltipPos===n.ABOVE&&r.has(o)?{distance:o,yTransformOrigin:m}:this.yTooltipPos===n.BELOW&&r.has(i)||r.has(i)?{distance:i,yTransformOrigin:u}:r.has(o)?{distance:o,yTransformOrigin:m}:{distance:i,yTransformOrigin:u}}determineValidYPositionOptions(t,e){const i=new Set,o=new Set;return this.yPositionHonorsViewportThreshold(t)?i.add(t):this.yPositionDoesntCollideWithViewport(t)&&o.add(t),this.yPositionHonorsViewportThreshold(e)?i.add(e):this.yPositionDoesntCollideWithViewport(e)&&o.add(e),i.size?i:o}yPositionHonorsViewportThreshold(t){const e=this.adapter.getViewportHeight();return t+this.adapter.getTooltipSize().height+this.minViewportTooltipThreshold<=e&&t>=this.minViewportTooltipThreshold}yPositionDoesntCollideWithViewport(t){const e=this.adapter.getViewportHeight();return t+this.adapter.getTooltipSize().height<=e&&t>=0}calculateTooltipWithCaretStyles(t){this.adapter.clearTooltipCaretStyles();const e=this.adapter.getTooltipCaretBoundingRect();if(!t||!e)return{position:a.DETECTED,top:0,left:0};const i=e.width/.8,o=e.height/.8/2,r=this.adapter.getTooltipSize(),n=this.calculateYWithCaretDistanceOptions(t,r.height,{caretWidth:i,caretHeight:o}),s=this.calculateXWithCaretDistanceOptions(t,r.width,{caretWidth:i,caretHeight:o});let l=this.validateTooltipWithCaretDistances(n,s);l.size<1&&(l=this.generateBackupPositionOption(t,r,{caretWidth:i,caretHeight:o}));const{position:h,xDistance:d,yDistance:c}=this.determineTooltipWithCaretDistance(l),{yTransformOrigin:p,xTransformOrigin:u}=this.setCaretPositionStyles(h,{caretWidth:i,caretHeight:o});return{yTransformOrigin:p,xTransformOrigin:u,top:c,left:d}}calculateXWithCaretDistanceOptions(t,e,i){const{caretWidth:o,caretHeight:r}=i,n=!this.adapter.isRTL(),s=t.left+t.width/2,a=t.left-(e+this.anchorGap+r),l=t.right+this.anchorGap+r,d=n?a:l,c=n?l:a,p=s-(24+o/2),u=s-(e-24-o/2),m=n?p:u,f=n?u:p,g=s-e/2;return new Map([[h.START,m],[h.CENTER,g],[h.END,f],[h.SIDE_END,c],[h.SIDE_START,d]])}calculateYWithCaretDistanceOptions(t,e,i){const{caretWidth:o,caretHeight:r}=i,n=t.top+t.height/2,s=t.bottom+this.anchorGap+r,a=t.top-(this.anchorGap+e+r),h=n-(24+o/2),d=n-e/2,c=n-(e-24-o/2);return new Map([[l.ABOVE,a],[l.BELOW,s],[l.SIDE_TOP,h],[l.SIDE_CENTER,d],[l.SIDE_BOTTOM,c]])}repositionTooltipOnAnchorMove(){const t=this.adapter.getAnchorBoundingRect();t&&this.anchorRect&&(t.top===this.anchorRect.top&&t.left===this.anchorRect.left&&t.height===this.anchorRect.height&&t.width===this.anchorRect.width||(this.anchorRect=t,this.parentRect=this.adapter.getParentBoundingRect(),this.richTooltip?this.positionRichTooltip():this.positionPlainTooltip()))}validateTooltipWithCaretDistances(t,e){const i=new Map,o=new Map,r=new Map([[l.ABOVE,[h.START,h.CENTER,h.END]],[l.BELOW,[h.START,h.CENTER,h.END]],[l.SIDE_TOP,[h.SIDE_START,h.SIDE_END]],[l.SIDE_CENTER,[h.SIDE_START,h.SIDE_END]],[l.SIDE_BOTTOM,[h.SIDE_START,h.SIDE_END]]]);for(const n of r.keys()){const s=t.get(n);if(this.yPositionHonorsViewportThreshold(s))for(const t of r.get(n)){const o=e.get(t);if(this.positionHonorsViewportThreshold(o)){const e=this.caretPositionOptionsMapping(t,n);i.set(e,{xDistance:o,yDistance:s})}}if(this.yPositionDoesntCollideWithViewport(s))for(const t of r.get(n)){const i=e.get(t);if(this.positionDoesntCollideWithViewport(i)){const e=this.caretPositionOptionsMapping(t,n);o.set(e,{xDistance:i,yDistance:s})}}}return i.size?i:o}generateBackupPositionOption(t,e,i){const o=!this.adapter.isRTL();let r,n,s,a;t.left<0?(r=this.minViewportTooltipThreshold+i.caretHeight,n=o?h.END:h.START):(r=this.adapter.getViewportWidth()-(e.width+this.minViewportTooltipThreshold+i.caretHeight),n=o?h.START:h.END),t.top<0?(s=this.minViewportTooltipThreshold+i.caretHeight,a=l.BELOW):(s=this.adapter.getViewportHeight()-(e.height+this.minViewportTooltipThreshold+i.caretHeight),a=l.ABOVE);const d=this.caretPositionOptionsMapping(n,a);return new Map([[d,{xDistance:r,yDistance:s}]])}determineTooltipWithCaretDistance(t){if(t.has(this.tooltipPositionWithCaret)){const e=t.get(this.tooltipPositionWithCaret);return{position:this.tooltipPositionWithCaret,xDistance:e.xDistance,yDistance:e.yDistance}}const e=[a.ABOVE_START,a.ABOVE_CENTER,a.ABOVE_END,a.TOP_SIDE_START,a.CENTER_SIDE_START,a.BOTTOM_SIDE_START,a.TOP_SIDE_END,a.CENTER_SIDE_END,a.BOTTOM_SIDE_END,a.BELOW_START,a.BELOW_CENTER,a.BELOW_END].find((e=>t.has(e))),i=t.get(e);return{position:e,xDistance:i.xDistance,yDistance:i.yDistance}}caretPositionOptionsMapping(t,e){switch(e){case l.ABOVE:if(t===h.START)return a.ABOVE_START;if(t===h.CENTER)return a.ABOVE_CENTER;if(t===h.END)return a.ABOVE_END;break;case l.BELOW:if(t===h.START)return a.BELOW_START;if(t===h.CENTER)return a.BELOW_CENTER;if(t===h.END)return a.BELOW_END;break;case l.SIDE_TOP:if(t===h.SIDE_START)return a.TOP_SIDE_START;if(t===h.SIDE_END)return a.TOP_SIDE_END;break;case l.SIDE_CENTER:if(t===h.SIDE_START)return a.CENTER_SIDE_START;if(t===h.SIDE_END)return a.CENTER_SIDE_END;break;case l.SIDE_BOTTOM:if(t===h.SIDE_START)return a.BOTTOM_SIDE_START;if(t===h.SIDE_END)return a.BOTTOM_SIDE_END}throw new Error(`MDCTooltipFoundation: Invalid caret position of ${t}, ${e}`)}setCaretPositionStyles(t,e){const i=this.calculateCaretPositionOnTooltip(t,e);if(!i)return{yTransformOrigin:0,xTransformOrigin:0};this.adapter.clearTooltipCaretStyles(),this.adapter.setTooltipCaretStyle(i.yAlignment,i.yAxisPx),this.adapter.setTooltipCaretStyle(i.xAlignment,i.xAxisPx);const o=i.skew*(Math.PI/180),r=Math.cos(o);this.adapter.setTooltipCaretStyle("transform",`rotate(${i.rotation}deg) skewY(${i.skew}deg) scaleX(${r})`),this.adapter.setTooltipCaretStyle("transform-origin",`${i.xAlignment} ${i.yAlignment}`);for(const t of i.caretCorners)this.adapter.setTooltipCaretStyle(t,"0");return{yTransformOrigin:i.yTransformOrigin,xTransformOrigin:i.xTransformOrigin}}calculateCaretPositionOnTooltip(t,e){const i=!this.adapter.isRTL(),o=this.adapter.getComputedStyleProperty("width"),r=this.adapter.getComputedStyleProperty("height");if(!o||!r||!e)return;const n=`calc((${o} - ${e.caretWidth}px) / 2)`,s=`calc((${r} - ${e.caretWidth}px) / 2)`,l="0",h="24px",p=`calc(${o} - 24px)`,f=`calc(${r} - 24px)`,g=Math.abs(55),E=["border-bottom-right-radius","border-top-left-radius"],T=["border-bottom-left-radius","border-top-right-radius"],v=20;switch(t){case a.BELOW_CENTER:return{yAlignment:u,xAlignment:d,yAxisPx:l,xAxisPx:n,rotation:-35,skew:-20,xTransformOrigin:n,yTransformOrigin:l,caretCorners:E};case a.BELOW_END:return{yAlignment:u,xAlignment:i?c:d,yAxisPx:l,xAxisPx:h,rotation:i?35:-35,skew:i?v:-20,xTransformOrigin:i?p:h,yTransformOrigin:l,caretCorners:i?T:E};case a.BELOW_START:return{yAlignment:u,xAlignment:i?d:c,yAxisPx:l,xAxisPx:h,rotation:i?-35:35,skew:i?-20:v,xTransformOrigin:i?h:p,yTransformOrigin:l,caretCorners:i?E:T};case a.TOP_SIDE_END:return{yAlignment:u,xAlignment:i?d:c,yAxisPx:h,xAxisPx:l,rotation:i?g:-1*g,skew:i?-20:v,xTransformOrigin:i?l:o,yTransformOrigin:h,caretCorners:i?E:T};case a.CENTER_SIDE_END:return{yAlignment:u,xAlignment:i?d:c,yAxisPx:s,xAxisPx:l,rotation:i?g:-1*g,skew:i?-20:v,xTransformOrigin:i?l:o,yTransformOrigin:s,caretCorners:i?E:T};case a.BOTTOM_SIDE_END:return{yAlignment:m,xAlignment:i?d:c,yAxisPx:h,xAxisPx:l,rotation:i?-1*g:g,skew:i?v:-20,xTransformOrigin:i?l:o,yTransformOrigin:f,caretCorners:i?T:E};case a.TOP_SIDE_START:return{yAlignment:u,xAlignment:i?c:d,yAxisPx:h,xAxisPx:l,rotation:i?-1*g:g,skew:i?v:-20,xTransformOrigin:i?o:l,yTransformOrigin:h,caretCorners:i?T:E};case a.CENTER_SIDE_START:return{yAlignment:u,xAlignment:i?c:d,yAxisPx:s,xAxisPx:l,rotation:i?-1*g:g,skew:i?v:-20,xTransformOrigin:i?o:l,yTransformOrigin:s,caretCorners:i?T:E};case a.BOTTOM_SIDE_START:return{yAlignment:m,xAlignment:i?c:d,yAxisPx:h,xAxisPx:l,rotation:i?g:-1*g,skew:i?-20:v,xTransformOrigin:i?o:l,yTransformOrigin:f,caretCorners:i?E:T};case a.ABOVE_CENTER:return{yAlignment:m,xAlignment:d,yAxisPx:l,xAxisPx:n,rotation:35,skew:v,xTransformOrigin:n,yTransformOrigin:r,caretCorners:T};case a.ABOVE_END:return{yAlignment:m,xAlignment:i?c:d,yAxisPx:l,xAxisPx:h,rotation:i?-35:35,skew:i?-20:v,xTransformOrigin:i?p:h,yTransformOrigin:r,caretCorners:i?E:T};default:case a.ABOVE_START:return{yAlignment:m,xAlignment:i?d:c,yAxisPx:l,xAxisPx:h,rotation:i?35:-35,skew:i?v:-20,xTransformOrigin:i?h:p,yTransformOrigin:r,caretCorners:i?T:E}}}clearShowTimeout(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=null)}clearHideTimeout(){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=null)}attachScrollHandler(t){this.addAncestorScrollEventListeners.push((()=>{t("scroll",this.windowScrollHandler)}))}removeScrollHandler(t){this.removeAncestorScrollEventListeners.push((()=>{t("scroll",this.windowScrollHandler)}))}destroy(){this.frameId&&(cancelAnimationFrame(this.frameId),this.frameId=null),this.clearHideTimeout(),this.clearShowTimeout(),this.adapter.removeClass(A),this.adapter.removeClass(S),this.adapter.removeClass(w),this.adapter.removeClass(x),this.adapter.removeClass(O),this.richTooltip&&this.adapter.deregisterEventHandler("focusout",this.richTooltipFocusOutHandler),this.persistentTooltip||(this.adapter.deregisterEventHandler("mouseenter",this.tooltipMouseEnterHandler),this.adapter.deregisterEventHandler("mouseleave",this.tooltipMouseLeaveHandler)),this.adapter.deregisterAnchorEventHandler("blur",this.anchorBlurHandler),this.adapter.deregisterDocumentEventHandler("click",this.documentClickHandler),this.adapter.deregisterDocumentEventHandler("keydown",this.documentKeydownHandler),this.adapter.deregisterWindowEventHandler("scroll",this.windowScrollHandler),this.adapter.deregisterWindowEventHandler("resize",this.windowResizeHandler);for(const t of this.removeAncestorScrollEventListeners)t();this.animFrame.cancelAll()}}const $=g.iv`.mdc-tooltip__surface{border-radius:4px;border-radius:var(--mdc-shape-small,4px)}.mdc-tooltip__caret-surface-bottom,.mdc-tooltip__caret-surface-top{border-radius:4px;border-radius:var(--mdc-shape-small,4px)}.mdc-tooltip__surface{color:#fff;color:var(--mdc-theme-text-primary-on-dark,#fff)}.mdc-tooltip__surface{background-color:rgba(0,0,0,.6)}.mdc-tooltip__surface{word-break:break-all;word-break:var(--mdc-tooltip-word-break,normal);overflow-wrap:anywhere}.mdc-tooltip{z-index:9}.mdc-tooltip--showing-transition .mdc-tooltip__surface-animation{transition:opacity 150ms 0s cubic-bezier(0,0,.2,1),transform 150ms 0s cubic-bezier(0,0,.2,1)}.mdc-tooltip--hide-transition .mdc-tooltip__surface-animation{transition:opacity 75ms 0s cubic-bezier(.4,0,1,1)}.mdc-tooltip__title{color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-light,rgba(0,0,0,.87))}.mdc-tooltip__content{color:rgba(0,0,0,.6)}.mdc-tooltip__content-link{color:#6200ee;color:var(--mdc-theme-primary,#6200ee)}.mdc-tooltip{position:fixed;display:none}.mdc-tooltip.mdc-tooltip--rich .mdc-tooltip__surface{background-color:#fff}.mdc-tooltip.mdc-tooltip--rich .mdc-tooltip__caret-surface-bottom,.mdc-tooltip.mdc-tooltip--rich .mdc-tooltip__caret-surface-top{background-color:#fff}.mdc-tooltip-wrapper--rich{position:relative}.mdc-tooltip--hide,.mdc-tooltip--showing,.mdc-tooltip--shown{display:inline-flex}.mdc-tooltip--hide.mdc-tooltip--rich,.mdc-tooltip--showing.mdc-tooltip--rich,.mdc-tooltip--shown.mdc-tooltip--rich{display:inline-block;left:-320px;position:absolute}.mdc-tooltip__surface{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family,var(--mdc-typography-font-family,Roboto,sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size,.75rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing,.0333333333em);text-decoration:inherit;text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);line-height:16px;padding:4px 8px;min-width:40px;max-width:200px;min-height:24px;max-height:40vh;box-sizing:border-box;overflow:hidden;text-align:center}.mdc-tooltip__surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid transparent;border-radius:inherit;content:"";pointer-events:none}@media screen and (forced-colors:active){.mdc-tooltip__surface::before{border-color:CanvasText}}.mdc-tooltip--rich .mdc-tooltip__surface{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);align-items:flex-start;border-radius:4px;display:flex;flex-direction:column;line-height:20px;min-height:24px;min-width:40px;max-width:320px;position:relative}.mdc-tooltip--rich .mdc-tooltip__surface .mdc-elevation-overlay{width:100%;height:100%;top:0;left:0}.mdc-tooltip--multiline .mdc-tooltip__surface{text-align:left}.mdc-tooltip--multiline .mdc-tooltip__surface[dir=rtl],[dir=rtl] .mdc-tooltip--multiline .mdc-tooltip__surface{text-align:right}.mdc-tooltip__surface .mdc-tooltip__title{display:block;margin-top:0;line-height:20px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-subtitle2-font-family,var(--mdc-typography-font-family,Roboto,sans-serif));font-size:.875rem;font-size:var(--mdc-typography-subtitle2-font-size,.875rem);line-height:1.375rem;line-height:var(--mdc-typography-subtitle2-line-height,1.375rem);font-weight:500;font-weight:var(--mdc-typography-subtitle2-font-weight,500);letter-spacing:.0071428571em;letter-spacing:var(--mdc-typography-subtitle2-letter-spacing,.0071428571em);text-decoration:inherit;text-decoration:var(--mdc-typography-subtitle2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-subtitle2-text-transform,inherit);margin:0 8px}.mdc-tooltip__surface .mdc-tooltip__title::before{display:inline-block;width:0;height:24px;content:"";vertical-align:0}.mdc-tooltip__surface .mdc-tooltip__content{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family,var(--mdc-typography-font-family,Roboto,sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size,.875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height,1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing,.0178571429em);text-decoration:inherit;text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);max-width:calc(200px - (2 * 8px));margin:8px;text-align:left}.mdc-tooltip__surface .mdc-tooltip__content[dir=rtl],[dir=rtl] .mdc-tooltip__surface .mdc-tooltip__content{text-align:right}.mdc-tooltip--rich .mdc-tooltip__surface .mdc-tooltip__content{max-width:calc(320px - (2 * 8px));align-self:stretch}.mdc-tooltip__surface .mdc-tooltip__content-link{text-decoration:none}.mdc-tooltip--rich-actions,.mdc-tooltip__content,.mdc-tooltip__title{z-index:1}.mdc-tooltip__surface-animation{opacity:0;transform:scale(.8);will-change:transform,opacity}.mdc-tooltip--shown .mdc-tooltip__surface-animation{transform:scale(1);opacity:1}.mdc-tooltip--hide .mdc-tooltip__surface-animation{transform:scale(1)}.mdc-tooltip__caret-surface-bottom,.mdc-tooltip__caret-surface-top{position:absolute;height:24px;width:24px;transform:rotate(35deg) skewY(20deg) scaleX(.9396926208)}.mdc-tooltip__caret-surface-bottom .mdc-elevation-overlay,.mdc-tooltip__caret-surface-top .mdc-elevation-overlay{width:100%;height:100%;top:0;left:0}.mdc-tooltip__caret-surface-bottom{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);outline:1px solid transparent;z-index:-1}@media screen and (forced-colors:active){.mdc-tooltip__caret-surface-bottom{outline-color:CanvasText}}.mdc-tooltip__title{color:var(--mdc-theme-text-primary-on-background)}.mdc-tooltip__content{color:var(--mdc-theme-text-primary-on-background)}.mdc-tooltip__content-link{color:var(--mdc-theme-accent)}.mdc-tooltip.mdc-tooltip--rich .mdc-tooltip__surface{background-color:var(--mdc-theme-surface)}.mdc-tooltip.mdc-tooltip--rich .mdc-tooltip__caret-surface-bottom,.mdc-tooltip.mdc-tooltip--rich .mdc-tooltip__caret-surface-top{background-color:var(--mdc-theme-surface)}`;let P=class extends o.H{constructor(){super(...arguments),this.mdcFoundationClass=R}createAdapter(){return Object.assign(Object.assign({},(0,o.q)(this.mdcRoot)),{getAttribute:t=>this.mdcRoot.getAttribute(t),setAttribute:(t,e)=>this.mdcRoot.setAttribute(t,e),removeAttribute:t=>this.mdcRoot.removeAttribute(t),getComputedStyleProperty:t=>getComputedStyle(this.mdcRoot,t).cssText,setStyleProperty:(t,e)=>this.mdcRoot.style.setProperty(t,e),setSurfaceAnimationStyleProperty:(t,e)=>this.mdcSurface.style.setProperty(t,e),getViewportWidth:()=>Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),getViewportHeight:()=>Math.max(document.documentElement.clientHeight||0,window.innerHeight||0),getTooltipSize:()=>Object.assign({width:this.mdcRoot.clientWidth,height:this.mdcRoot.clientHeight}),getAnchorBoundingRect:()=>{var t,e;return null!==(e=null===(t=this.anchor)||void 0===t?void 0:t.getBoundingClientRect())&&void 0!==e?e:null},getParentBoundingRect:()=>{var t,e;return null!==(e=null===(t=this.renderRoot.getRootNode().parentElement)||void 0===t?void 0:t.getBoundingClientRect())&&void 0!==e?e:null},getAnchorAttribute:t=>{var e,i;return null!==(i=null===(e=this.anchor)||void 0===e?void 0:e.getAttribute(t))&&void 0!==i?i:null},setAnchorAttribute:(t,e)=>{var i;return null===(i=this.anchor)||void 0===i?void 0:i.setAttribute(t,e)},isRTL:()=>!1,anchorContainsElement:t=>{var e,i;return null!==(i=null===(e=this.anchor)||void 0===e?void 0:e.contains(t))&&void 0!==i&&i},tooltipContainsElement:t=>this.contains(t),focusAnchorElement:()=>{var t;return null===(t=this.anchor)||void 0===t?void 0:t.focus()},registerEventHandler:(t,e)=>{var i;return null===(i=this.mdcRoot)||void 0===i?void 0:i.addEventListener(t,e)},deregisterEventHandler:(t,e)=>{var i;return null===(i=this.mdcRoot)||void 0===i?void 0:i.removeEventListener(t,e)},registerAnchorEventHandler:(t,e)=>{var i;return null===(i=this.anchor)||void 0===i?void 0:i.addEventListener(t,e)},deregisterAnchorEventHandler:(t,e)=>{var i;return null===(i=this.anchor)||void 0===i?void 0:i.removeEventListener(t,e)},registerDocumentEventHandler:(t,e)=>document.addEventListener(t,e),deregisterDocumentEventHandler:(t,e)=>document.removeEventListener(t,e),registerWindowEventHandler:(t,e)=>window.addEventListener(t,e),deregisterWindowEventHandler:(t,e)=>window.removeEventListener(t,e),notifyHidden:()=>this.dispatchEvent(new Event("MDCTooltip:hidden")),getTooltipCaretBoundingRect:()=>null,setTooltipCaretStyle:()=>{},clearTooltipCaretStyles:()=>{},getActiveElement:()=>document.activeElement})}updated(t){super.updated(t),void 0===this.showDelay||isNaN(this.showDelay)||this.mdcFoundation.setShowDelay(this.showDelay),void 0===this.hideDelay||isNaN(this.hideDelay)||this.mdcFoundation.setHideDelay(this.hideDelay)}firstUpdated(){var t,e,i,o,r;super.firstUpdated(),null===(t=this.anchor)||void 0===t||t.addEventListener("click",(()=>this.mdcFoundation.handleAnchorClick())),null===(e=this.anchor)||void 0===e||e.addEventListener("mouseenter",(()=>this.mdcFoundation.handleAnchorMouseEnter())),null===(i=this.anchor)||void 0===i||i.addEventListener("touchstart",(()=>this.mdcFoundation.handleAnchorTouchstart())),this.persistent||(null===(o=this.anchor)||void 0===o||o.addEventListener("mouseleave",(()=>this.mdcFoundation.handleAnchorMouseLeave())),null===(r=this.anchor)||void 0===r||r.addEventListener("touchend",(()=>this.mdcFoundation.handleAnchorTouchend())))}disconnectedCallback(){var t,e,i,o,r;super.connectedCallback(),null===(t=this.anchor)||void 0===t||t.removeEventListener("click",(()=>this.mdcFoundation.handleAnchorClick())),null===(e=this.anchor)||void 0===e||e.removeEventListener("mouseenter",(()=>this.mdcFoundation.handleAnchorMouseEnter())),null===(i=this.anchor)||void 0===i||i.removeEventListener("mouseleave",(()=>this.mdcFoundation.handleAnchorMouseLeave())),null===(o=this.anchor)||void 0===o||o.removeEventListener("touchstart",(()=>this.mdcFoundation.handleAnchorTouchstart())),null===(r=this.anchor)||void 0===r||r.removeEventListener("touchend",(()=>this.mdcFoundation.handleAnchorTouchend()))}render(){return g.dy`
|
3
|
+
<div
|
4
|
+
class="mdc-tooltip ${this.rich?"mdc-tooltip--rich":""}"
|
5
|
+
role="tooltip"
|
6
|
+
aria-hidden="true"
|
7
|
+
data-mdc-tooltip-persistent="true"
|
8
|
+
>
|
9
|
+
<div class="mdc-tooltip__surface mdc-tooltip__surface-animation">
|
10
|
+
${this.rich?g.dy`<div class="mdc-tooltip__title">${this.richTitle}</div>
|
11
|
+
<div class="mdc-tooltip__content">
|
12
|
+
<slot></slot>
|
13
|
+
</div>
|
14
|
+
<div class="mdc-tooltip--rich-actions">
|
15
|
+
<slot name="actionItems"></slot>
|
16
|
+
</div>`:g.dy`<slot></slot>`}
|
17
|
+
</div>
|
18
|
+
</div>
|
19
|
+
`}};P.styles=[$],(0,e.gn)([(0,f.IO)(".mdc-tooltip"),(0,e.w6)("design:type",HTMLElement)],P.prototype,"mdcRoot",void 0),(0,e.gn)([(0,f.IO)(".mdc-tooltip__surface"),(0,e.w6)("design:type",HTMLElement)],P.prototype,"mdcSurface",void 0),(0,e.gn)([(0,f.Cb)({type:Object}),(0,e.w6)("design:type",HTMLElement)],P.prototype,"anchor",void 0),(0,e.gn)([(0,f.Cb)(),(0,e.w6)("design:type",String)],P.prototype,"richTitle",void 0),(0,e.gn)([(0,f.Cb)({type:Boolean,reflect:!0}),(0,e.w6)("design:type",Boolean)],P.prototype,"rich",void 0),(0,e.gn)([(0,f.Cb)({type:Boolean,reflect:!0}),(0,e.w6)("design:type",HTMLElement)],P.prototype,"persistent",void 0),(0,e.gn)([(0,f.Cb)({type:Number}),(0,e.w6)("design:type",Number)],P.prototype,"showDelay",void 0),(0,e.gn)([(0,f.Cb)({type:Number}),(0,e.w6)("design:type",Number)],P.prototype,"hideDelay",void 0),P=(0,e.gn)([(0,f.Mo)("td-tooltip")],P)})()})();
|
@@ -0,0 +1,69 @@
|
|
1
|
+
/**
|
2
|
+
* @license
|
3
|
+
* Copyright 2016 Google Inc.
|
4
|
+
*
|
5
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
* of this software and associated documentation files (the "Software"), to deal
|
7
|
+
* in the Software without restriction, including without limitation the rights
|
8
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
* copies of the Software, and to permit persons to whom the Software is
|
10
|
+
* furnished to do so, subject to the following conditions:
|
11
|
+
*
|
12
|
+
* The above copyright notice and this permission notice shall be included in
|
13
|
+
* all copies or substantial portions of the Software.
|
14
|
+
*
|
15
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
* THE SOFTWARE.
|
22
|
+
*/
|
23
|
+
|
24
|
+
/**
|
25
|
+
* @license
|
26
|
+
* Copyright 2017 Google LLC
|
27
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
28
|
+
*/
|
29
|
+
|
30
|
+
/**
|
31
|
+
* @license
|
32
|
+
* Copyright 2018 Google LLC
|
33
|
+
* SPDX-License-Identifier: Apache-2.0
|
34
|
+
*/
|
35
|
+
|
36
|
+
/**
|
37
|
+
* @license
|
38
|
+
* Copyright 2019 Google LLC
|
39
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
40
|
+
*/
|
41
|
+
|
42
|
+
/**
|
43
|
+
* @license
|
44
|
+
* Copyright 2020 Google Inc.
|
45
|
+
*
|
46
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
47
|
+
* of this software and associated documentation files (the "Software"), to deal
|
48
|
+
* in the Software without restriction, including without limitation the rights
|
49
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
50
|
+
* copies of the Software, and to permit persons to whom the Software is
|
51
|
+
* furnished to do so, subject to the following conditions:
|
52
|
+
*
|
53
|
+
* The above copyright notice and this permission notice shall be included in
|
54
|
+
* all copies or substantial portions of the Software.
|
55
|
+
*
|
56
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
57
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
58
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
59
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
60
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
61
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
62
|
+
* THE SOFTWARE.
|
63
|
+
*/
|
64
|
+
|
65
|
+
/**
|
66
|
+
* @license
|
67
|
+
* Copyright 2021 Google LLC
|
68
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
69
|
+
*/
|