@descope/web-components-ui 2.2.24 → 2.2.25
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/README.md +1 -1
- package/dist/umd/1408.js +2 -2
- package/dist/umd/1453.js +177 -0
- package/dist/umd/{1995.js.LICENSE.txt → 1453.js.LICENSE.txt} +6 -0
- package/dist/umd/1453.js.map +1 -0
- package/dist/umd/1899.js +2 -2
- package/dist/umd/2562.js +3 -0
- package/dist/umd/2562.js.map +1 -0
- package/dist/umd/3620.js +3 -3
- package/dist/umd/4518.js +3 -3
- package/dist/umd/4550.js +2 -2
- package/dist/umd/4623.js +1 -1
- package/dist/umd/4914.js +1 -1
- package/dist/umd/4914.js.map +1 -1
- package/dist/umd/5260.js +2 -2
- package/dist/umd/5263.js +498 -0
- package/dist/umd/5263.js.LICENSE.txt +17 -0
- package/dist/umd/5263.js.map +1 -0
- package/dist/umd/5648.js +1 -1
- package/dist/umd/5966.js +125 -0
- package/dist/umd/5966.js.map +1 -0
- package/dist/umd/6477.js +3 -3
- package/dist/umd/7291.js +2 -2
- package/dist/umd/7387.js +144 -0
- package/dist/umd/{6419.js.LICENSE.txt → 7387.js.LICENSE.txt} +8 -2
- package/dist/umd/7387.js.map +1 -0
- package/dist/umd/7774.js +3 -3
- package/dist/umd/7939.js +1 -1
- package/dist/umd/8202.js +82 -0
- package/dist/umd/{descope-apps-list.js.LICENSE.txt → 8202.js.LICENSE.txt} +0 -6
- package/dist/umd/8202.js.map +1 -0
- package/dist/umd/8983.js +1 -1
- package/dist/umd/9117.js +3 -3
- package/dist/umd/9970.js +1 -1
- package/dist/umd/button-selection-group-fields-descope-button-selection-group-item-index-js.js +1 -1
- package/dist/umd/descope-apps-list.js +1 -17
- package/dist/umd/descope-apps-list.js.map +1 -1
- package/dist/umd/descope-avatar.js +161 -2
- package/dist/umd/descope-avatar.js.LICENSE.txt +6 -0
- package/dist/umd/descope-avatar.js.map +1 -1
- package/dist/umd/descope-button.js +1 -1
- package/dist/umd/descope-combo-box.js +2 -2
- package/dist/umd/descope-date-field-index-js.js +1 -1
- package/dist/umd/descope-email-field-index-js.js +1 -1
- package/dist/umd/descope-grid-descope-grid-custom-column-index-js.js +1 -1
- package/dist/umd/descope-grid-descope-grid-custom-column-index-js.js.map +1 -1
- package/dist/umd/descope-grid-descope-grid-item-details-column-index-js.js +1 -1
- package/dist/umd/descope-grid-descope-grid-item-details-column-index-js.js.map +1 -1
- package/dist/umd/descope-grid-descope-grid-selection-column-index-js.js +1 -1
- package/dist/umd/descope-grid-descope-grid-selection-column-index-js.js.map +1 -1
- package/dist/umd/descope-grid-descope-grid-text-column-index-js.js +1 -1
- package/dist/umd/descope-grid-descope-grid-text-column-index-js.js.map +1 -1
- package/dist/umd/descope-outbound-app-button.js +1 -1
- package/dist/umd/descope-outbound-apps.js +1 -338
- package/dist/umd/descope-outbound-apps.js.map +1 -1
- package/dist/umd/descope-passcode-index-js.js +1 -1
- package/dist/umd/descope-security-questions-verify-index-js.js +1 -1
- package/dist/umd/descope-text-field-index-js.js +1 -1
- package/dist/umd/descope-timer-button.js +1 -1
- package/dist/umd/descope-tooltip.js +2 -1
- package/dist/umd/descope-tooltip.js.LICENSE.txt +11 -0
- package/dist/umd/descope-tooltip.js.map +1 -1
- package/dist/umd/descope-upload-file-index-js.js +1 -1
- package/dist/umd/descope-user-attribute-index-js.js +1 -1
- package/dist/umd/descope-user-auth-method-index-js.js +1 -1
- package/dist/umd/index.js +1 -1
- package/dist/umd/index.js.map +1 -1
- package/dist/umd/phone-fields-descope-phone-input-box-field-descope-phone-input-box-internal-index-js.js +1 -1
- package/dist/umd/phone-fields-descope-phone-input-box-field-index-js.js +1 -1
- package/package.json +29 -29
- package/dist/umd/1519.js +0 -203
- package/dist/umd/1519.js.LICENSE.txt +0 -51
- package/dist/umd/1519.js.map +0 -1
- package/dist/umd/1995.js +0 -241
- package/dist/umd/1995.js.map +0 -1
- package/dist/umd/6419.js +0 -82
- package/dist/umd/6419.js.map +0 -1
- package/dist/umd/676.js +0 -3
- package/dist/umd/676.js.map +0 -1
- package/dist/umd/8618.js +0 -125
- package/dist/umd/8618.js.map +0 -1
- package/dist/umd/descope-outbound-apps.js.LICENSE.txt +0 -5
- /package/dist/umd/{676.js.LICENSE.txt → 2562.js.LICENSE.txt} +0 -0
- /package/dist/umd/{8618.js.LICENSE.txt → 5966.js.LICENSE.txt} +0 -0
package/dist/umd/5260.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/*! For license information please see 5260.js.LICENSE.txt */
|
|
2
|
-
"use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[5260],{10438:(t,e,s)=>{s.d(e,{U:()=>o});var i=s(98741);const n=new ResizeObserver(t=>{setTimeout(()=>{t.forEach(t=>{t.target.resizables?t.target.resizables.forEach(e=>{e._onResize(t.contentRect)}):t.target._onResize(t.contentRect)})})}),o=(0,i.y)(t=>class extends t{get _observeParent(){return!1}connectedCallback(){if(super.connectedCallback(),n.observe(this),this._observeParent){const t=this.parentNode instanceof ShadowRoot?this.parentNode.host:this.parentNode;t.resizables||(t.resizables=new Set,n.observe(t)),t.resizables.add(this),this.__parent=t}}disconnectedCallback(){super.disconnectedCallback(),n.unobserve(this);const t=this.__parent;if(this._observeParent&&t){const e=t.resizables;e&&(e.delete(this),0===e.size&&n.unobserve(t)),this.__parent=null}}_onResize(t){}})},22916:(t,e,s)=>{s.d(e,{io:()=>_,ml:()=>h,lW:()=>u,Qo:()=>p});var i=s(51450),n=s(73278);const o=t=>(...e)=>({_$litDirective$:t,values:e});class r{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}var a=s(55670);class c extends r{constructor(t){if(super(t),this.it=a.s6,2!==t.type)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===a.s6||null==t)return this._t=void 0,this.it=t;if(t===a.c0)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;const e=[t];return e.raw=e,this._t={_$litType$:this.constructor.resultType,strings:e,values:[]}}}c.directiveName="unsafeHTML",c.resultType=1,o(c);class l extends c{}l.directiveName="unsafeSVG",l.resultType=2;const d=o(l);function _(t){let e=i.s6;if(t){const s=t.cloneNode(!0);s.removeAttribute("id"),e=i.JW`${d(s.outerHTML)}`}return e}function h(t){let e=null==t||""===t?i.s6:t;return function(t){return(0,n.qb)(t,n.Qk.SVG)||t===i.s6}(e)||(console.error("[vaadin-icon] Invalid svg passed, please use Lit svg literal."),e=i.s6),e}function u(t,e){const s=h(t);(0,i.XX)(s,e)}function p(t){return i.JW`${d(t)}`}},26469:(t,e,s)=>{s.d(e,{k:()=>h});var i=s(13256),n=s(82901),o=s(
|
|
2
|
+
"use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[5260],{10438:(t,e,s)=>{s.d(e,{U:()=>o});var i=s(98741);const n=new ResizeObserver(t=>{setTimeout(()=>{t.forEach(t=>{t.target.resizables?t.target.resizables.forEach(e=>{e._onResize(t.contentRect)}):t.target._onResize(t.contentRect)})})}),o=(0,i.y)(t=>class extends t{get _observeParent(){return!1}connectedCallback(){if(super.connectedCallback(),n.observe(this),this._observeParent){const t=this.parentNode instanceof ShadowRoot?this.parentNode.host:this.parentNode;t.resizables||(t.resizables=new Set,n.observe(t)),t.resizables.add(this),this.__parent=t}}disconnectedCallback(){super.disconnectedCallback(),n.unobserve(this);const t=this.__parent;if(this._observeParent&&t){const e=t.resizables;e&&(e.delete(this),0===e.size&&n.unobserve(t)),this.__parent=null}}_onResize(t){}})},22916:(t,e,s)=>{s.d(e,{io:()=>_,ml:()=>h,lW:()=>u,Qo:()=>p});var i=s(51450),n=s(73278);const o=t=>(...e)=>({_$litDirective$:t,values:e});class r{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}var a=s(55670);class c extends r{constructor(t){if(super(t),this.it=a.s6,2!==t.type)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===a.s6||null==t)return this._t=void 0,this.it=t;if(t===a.c0)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this._t;this.it=t;const e=[t];return e.raw=e,this._t={_$litType$:this.constructor.resultType,strings:e,values:[]}}}c.directiveName="unsafeHTML",c.resultType=1,o(c);class l extends c{}l.directiveName="unsafeSVG",l.resultType=2;const d=o(l);function _(t){let e=i.s6;if(t){const s=t.cloneNode(!0);s.removeAttribute("id"),e=i.JW`${d(s.outerHTML)}`}return e}function h(t){let e=null==t||""===t?i.s6:t;return function(t){return(0,n.qb)(t,n.Qk.SVG)||t===i.s6}(e)||(console.error("[vaadin-icon] Invalid svg passed, please use Lit svg literal."),e=i.s6),e}function u(t,e){const s=h(t);(0,i.XX)(s,e)}function p(t){return i.JW`${d(t)}`}},26469:(t,e,s)=>{s.d(e,{k:()=>h});var i=s(13256),n=s(82901),o=s(72562),r=s(22916);const a={},c=new Set;function l(t,e){return(t||"").replace(`${e}:`,"")}function d(t){if(t)return t.split(":")[0]||"vaadin"}function _(t,e){t._icons=[...t.querySelectorAll("[id]")].reduce((t,s)=>(t[l(s.id,e)]=s,t),{})}class h extends((0,o.q)(i.Pu)){static get template(){return null}static get is(){return"vaadin-iconset"}static get properties(){return{name:{type:String,observer:"__nameChanged"},size:{type:Number,value:24}}}static get attachedIcons(){return c}static getIconset(t){return a[t]}static getIconSvg(t,e){const s=e||d(t),i=this.getIconset(s);if(!t||!i)return{svg:(0,r.io)(null)};const n=l(t,s),o=i._icons[n];return{preserveAspectRatio:o?o.getAttribute("preserveAspectRatio"):null,svg:(0,r.io)(o),size:i.size,viewBox:o?o.getAttribute("viewBox"):null}}static register(t,e,s){if(!a[t]){const i=document.createElement("vaadin-iconset");i.appendChild(s.content.cloneNode(!0)),a[t]=i,_(i,t),i.size=e,i.name=t,i.__nameChanged(t)}}connectedCallback(){super.connectedCallback(),this.style.display="none";const{name:t}=this;a[t]=this,_(this,t),this.__updateIcons(t)}__updateIcons(t){c.forEach(e=>{t===d(e.icon)&&e._applyIcon()})}__nameChanged(t,e){e&&(a[t]=a[e],delete a[e]),t&&this.__updateIcons(t)}}(0,n.X)(h)},73278:(t,e,s)=>{s.d(e,{Qk:()=>o,qb:()=>r});var i=s(55670);const{I:n}=i.ge,o={HTML:1,SVG:2,MATHML:3},r=(t,e)=>void 0===e?void 0!==t?._$litType$:t?._$litType$===e},95260:(t,e,s)=>{s(42068);var i=s(87550);(0,i.SF)("vaadin-icon",i.AH`
|
|
3
3
|
:host {
|
|
4
4
|
width: var(--lumo-icon-size-m);
|
|
5
5
|
height: var(--lumo-icon-size-m);
|
|
6
6
|
}
|
|
7
|
-
`,{moduleId:"lumo-icon"});var n=s(13256),o=s(55774),r=s(82901),a=s(
|
|
7
|
+
`,{moduleId:"lumo-icon"});var n=s(13256),o=s(55774),r=s(82901),a=s(72562),c=s(21961),l=s(81488),d=s(98741),_=s(10438),h=s(4080);const u=!CSS.supports("container-type: inline-size")||!!h.nr&&!function(){const t=document.createElement("style");t.textContent="\n .vaadin-icon-test-element {\n container-type: size;\n height: 2px;\n visibility: hidden;\n position: fixed;\n }\n\n .vaadin-icon-test-element::before {\n content: '';\n display: block;\n height: 100cqh;\n ";const e=document.createElement("div");e.classList.add("vaadin-icon-test-element"),document.body.append(t,e);const{height:s}=getComputedStyle(e,"::before");return t.remove(),e.remove(),"2px"===s}();u&&(0,i.SF)("vaadin-icon",i.AH`
|
|
8
8
|
:host::after,
|
|
9
9
|
:host::before {
|
|
10
10
|
font-size: var(--_vaadin-font-icon-size);
|
package/dist/umd/5263.js
ADDED
|
@@ -0,0 +1,498 @@
|
|
|
1
|
+
/*! For license information please see 5263.js.LICENSE.txt */
|
|
2
|
+
"use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[5263],{21961:(t,e,o)=>{o.d(e,{C:()=>i});var a=o(98741);const r=new WeakMap,i=(0,a.y)(t=>class extends t{get slotStyles(){return{}}connectedCallback(){super.connectedCallback(),this.__applySlotStyles()}__applySlotStyles(){const t=this.getRootNode(),e=function(t){return r.has(t)||r.set(t,new Set),r.get(t)}(t);this.slotStyles.forEach(o=>{e.has(o)||(function(t,e){const o=document.createElement("style");window.DESCOPE_NONCE&&o.setAttribute("nonce",window.DESCOPE_NONCE),o.textContent=t,e===document?document.head.appendChild(o):e.insertBefore(o,e.firstChild)}(o,t),e.add(o))})}})},83799:(t,e,o)=>{o(93555),o(89389)},87133:(t,e,o)=>{o(17017),o(64511),o(42068),o(9433),o(3241),o(83315),o(88660);var a=o(87550),r=o(36411);const i=a.AH`
|
|
3
|
+
:host {
|
|
4
|
+
--vaadin-user-color-0: #df0b92;
|
|
5
|
+
--vaadin-user-color-1: #650acc;
|
|
6
|
+
--vaadin-user-color-2: #097faa;
|
|
7
|
+
--vaadin-user-color-3: #ad6200;
|
|
8
|
+
--vaadin-user-color-4: #bf16f3;
|
|
9
|
+
--vaadin-user-color-5: #084391;
|
|
10
|
+
--vaadin-user-color-6: #078836;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
[theme~='dark'] {
|
|
14
|
+
--vaadin-user-color-0: #ff66c7;
|
|
15
|
+
--vaadin-user-color-1: #9d8aff;
|
|
16
|
+
--vaadin-user-color-2: #8aff66;
|
|
17
|
+
--vaadin-user-color-3: #ffbd66;
|
|
18
|
+
--vaadin-user-color-4: #dc6bff;
|
|
19
|
+
--vaadin-user-color-5: #66fffa;
|
|
20
|
+
--vaadin-user-color-6: #e6ff66;
|
|
21
|
+
}
|
|
22
|
+
`;(0,r.q)("user-color-props",i),(0,a.SF)("vaadin-avatar",a.AH`
|
|
23
|
+
:host {
|
|
24
|
+
color: var(--lumo-secondary-text-color);
|
|
25
|
+
background-color: var(--lumo-contrast-10pct);
|
|
26
|
+
border-radius: 50%;
|
|
27
|
+
outline: none;
|
|
28
|
+
cursor: default;
|
|
29
|
+
user-select: none;
|
|
30
|
+
-webkit-tap-highlight-color: transparent;
|
|
31
|
+
-webkit-font-smoothing: antialiased;
|
|
32
|
+
-moz-osx-font-smoothing: grayscale;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
:host([has-color-index]) {
|
|
36
|
+
color: var(--lumo-base-color);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
:host([focus-ring]) {
|
|
40
|
+
border-color: var(--vaadin-focus-ring-color, var(--lumo-primary-color-50pct));
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
[part='icon'],
|
|
44
|
+
[part='abbr'] {
|
|
45
|
+
fill: currentColor;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
[part='abbr'] {
|
|
49
|
+
font-family: var(--lumo-font-family);
|
|
50
|
+
font-size: 2.4375em;
|
|
51
|
+
font-weight: 500;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
:host([theme~='xlarge']) [part='abbr'] {
|
|
55
|
+
font-size: 2.5em;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
:host([theme~='large']) [part='abbr'] {
|
|
59
|
+
font-size: 2.375em;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
:host([theme~='small']) [part='abbr'] {
|
|
63
|
+
font-size: 2.75em;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
:host([theme~='xsmall']) [part='abbr'] {
|
|
67
|
+
font-size: 3em;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
:host([theme~='xlarge']) {
|
|
71
|
+
--vaadin-avatar-size: var(--lumo-size-xl);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
:host([theme~='large']) {
|
|
75
|
+
--vaadin-avatar-size: var(--lumo-size-l);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
:host([theme~='small']) {
|
|
79
|
+
--vaadin-avatar-size: var(--lumo-size-s);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
:host([theme~='xsmall']) {
|
|
83
|
+
--vaadin-avatar-size: var(--lumo-size-xs);
|
|
84
|
+
}
|
|
85
|
+
`,{moduleId:"lumo-avatar"});const n=document.createElement("template");n.innerHTML=`\n <style nonce=${window.DESCOPE_NONCE}>\n @font-face {\n font-family: 'vaadin-avatar-icons';\n src: url('`+o.p+"fonts/font-1949233557.woff');\n font-weight: normal;\n font-style: normal;\n }\n </style>\n",document.head.appendChild(n.content);var s=o(13256),l=o(55774),d=o(82901),c=o(72562),h=o(81488),u=o(53149);const m=t=>class extends((0,u.y)(t)){static get properties(){return{img:{type:String,reflectToAttribute:!0,observer:"__imgChanged"},abbr:{type:String,reflectToAttribute:!0},name:{type:String,reflectToAttribute:!0},colorIndex:{type:Number,observer:"__colorIndexChanged"},i18n:{type:Object,value:()=>({anonymous:"anonymous"})},withTooltip:{type:Boolean,value:!1,observer:"__withTooltipChanged"},__imgVisible:Boolean,__iconVisible:Boolean,__abbrVisible:Boolean,__tooltipNode:Object}}static get observers(){return["__imgOrAbbrOrNameChanged(img, abbr, name)","__i18nChanged(i18n)","__tooltipChanged(__tooltipNode, name, abbr)"]}ready(){super.ready(),this.__updateVisibility(),this.hasAttribute("role")||this.setAttribute("role","button"),this.hasAttribute("tabindex")||this.setAttribute("tabindex","0"),this.name||this.abbr||this.__setTooltip()}__colorIndexChanged(t){if(null!=t){const e=`--vaadin-user-color-${t}`;Boolean(getComputedStyle(document.documentElement).getPropertyValue(e))?(this.setAttribute("has-color-index",""),this.style.setProperty("--vaadin-avatar-user-color",`var(${e})`)):(this.removeAttribute("has-color-index"),console.warn(`The CSS property --vaadin-user-color-${t} is not defined`))}else this.removeAttribute("has-color-index")}__imgChanged(){this.__imgFailedToLoad=!1}__imgOrAbbrOrNameChanged(t,e,o){this.__updateVisibility(),e&&e!==this.__generatedAbbr||(this.abbr=o?this.__generatedAbbr=o.split(" ").map(t=>t.charAt(0)).join(""):void 0)}__tooltipChanged(t,e,o){t&&(o&&o!==this.__generatedAbbr?this.__setTooltip(e?`${e} (${o})`:o):this.__setTooltip(e))}__withTooltipChanged(t,e){if(t){const t=document.createElement("vaadin-tooltip");t.setAttribute("slot","tooltip"),this.appendChild(t),this.__tooltipNode=t}else e&&(this.__tooltipNode.target=null,this.__tooltipNode.remove(),this.__tooltipNode=null)}__i18nChanged(t){t&&t.anonymous&&(this.__oldAnonymous&&this.__tooltipNode&&this.__tooltipNode.text===this.__oldAnonymous&&this.__setTooltip(),this.__oldAnonymous=t.anonymous)}__updateVisibility(){this.__imgVisible=!!this.img&&!this.__imgFailedToLoad,this.__abbrVisible=!this.__imgVisible&&!!this.abbr,this.__iconVisible=!this.__imgVisible&&!this.abbr}__setTooltip(t){const e=this.__tooltipNode;e&&(e.text=t||this.i18n.anonymous)}__onImageLoadError(){this.img&&(console.warn(`<vaadin-avatar> The specified image could not be loaded: ${this.img}`),this.__imgFailedToLoad=!0,this.__updateVisibility())}},b=a.AH`
|
|
86
|
+
:host {
|
|
87
|
+
display: inline-block;
|
|
88
|
+
flex: none;
|
|
89
|
+
border-radius: 50%;
|
|
90
|
+
overflow: hidden;
|
|
91
|
+
height: var(--vaadin-avatar-size, 64px);
|
|
92
|
+
width: var(--vaadin-avatar-size, 64px);
|
|
93
|
+
border: var(--vaadin-avatar-outline-width) solid transparent;
|
|
94
|
+
margin: calc(var(--vaadin-avatar-outline-width) * -1);
|
|
95
|
+
background-clip: content-box;
|
|
96
|
+
--vaadin-avatar-outline-width: var(--vaadin-focus-ring-width, 2px);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
img {
|
|
100
|
+
height: 100%;
|
|
101
|
+
width: 100%;
|
|
102
|
+
object-fit: cover;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
[part='icon'] {
|
|
106
|
+
font-size: 5.6em;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
[part='abbr'] {
|
|
110
|
+
font-size: 2.2em;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
[part='icon'] > text {
|
|
114
|
+
font-family: 'vaadin-avatar-icons';
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
:host([hidden]) {
|
|
118
|
+
display: none !important;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
svg[hidden] {
|
|
122
|
+
display: none !important;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
:host([has-color-index]) {
|
|
126
|
+
position: relative;
|
|
127
|
+
background-color: var(--vaadin-avatar-user-color);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
:host([has-color-index])::before {
|
|
131
|
+
position: absolute;
|
|
132
|
+
content: '';
|
|
133
|
+
inset: 0;
|
|
134
|
+
border-radius: inherit;
|
|
135
|
+
box-shadow: inset 0 0 0 2px var(--vaadin-avatar-user-color);
|
|
136
|
+
}
|
|
137
|
+
`;(0,a.SF)("vaadin-avatar",b,{moduleId:"vaadin-avatar-styles"});class v extends(m((0,c.q)((0,a.cp)((0,l.w)(s.Pu))))){static get template(){return s.qy`
|
|
138
|
+
<img hidden$="[[!__imgVisible]]" src$="[[img]]" aria-hidden="true" on-error="__onImageLoadError" />
|
|
139
|
+
<svg
|
|
140
|
+
part="icon"
|
|
141
|
+
hidden$="[[!__iconVisible]]"
|
|
142
|
+
id="avatar-icon"
|
|
143
|
+
viewBox="-50 -50 100 100"
|
|
144
|
+
preserveAspectRatio="xMidYMid meet"
|
|
145
|
+
aria-hidden="true"
|
|
146
|
+
>
|
|
147
|
+
<text dy=".35em" text-anchor="middle"></text>
|
|
148
|
+
</svg>
|
|
149
|
+
<svg
|
|
150
|
+
part="abbr"
|
|
151
|
+
hidden$="[[!__abbrVisible]]"
|
|
152
|
+
id="avatar-abbr"
|
|
153
|
+
viewBox="-50 -50 100 100"
|
|
154
|
+
preserveAspectRatio="xMidYMid meet"
|
|
155
|
+
aria-hidden="true"
|
|
156
|
+
>
|
|
157
|
+
<text dy=".35em" text-anchor="middle">[[abbr]]</text>
|
|
158
|
+
</svg>
|
|
159
|
+
|
|
160
|
+
<slot name="tooltip"></slot>
|
|
161
|
+
`}static get is(){return"vaadin-avatar"}ready(){super.ready(),this._tooltipController=new h.I(this),this.addController(this._tooltipController)}}(0,d.X)(v)},89389:(t,e,o)=>{o.d(e,{$:()=>b});var a=o(13256),r=o(55774),i=o(82901),n=o(72562),s=o(81488),l=o(87550);const d=o(51450).AH`
|
|
162
|
+
:host {
|
|
163
|
+
display: inline-block;
|
|
164
|
+
position: relative;
|
|
165
|
+
outline: none;
|
|
166
|
+
white-space: nowrap;
|
|
167
|
+
-webkit-user-select: none;
|
|
168
|
+
-moz-user-select: none;
|
|
169
|
+
user-select: none;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
:host([hidden]) {
|
|
173
|
+
display: none !important;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
/* Aligns the button with form fields when placed on the same line.
|
|
177
|
+
Note, to make it work, the form fields should have the same "::before" pseudo-element. */
|
|
178
|
+
.vaadin-button-container::before {
|
|
179
|
+
content: '\\2003';
|
|
180
|
+
display: inline-block;
|
|
181
|
+
width: 0;
|
|
182
|
+
max-height: 100%;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
.vaadin-button-container {
|
|
186
|
+
display: inline-flex;
|
|
187
|
+
align-items: center;
|
|
188
|
+
justify-content: center;
|
|
189
|
+
text-align: center;
|
|
190
|
+
width: 100%;
|
|
191
|
+
height: 100%;
|
|
192
|
+
min-height: inherit;
|
|
193
|
+
text-shadow: inherit;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
[part='prefix'],
|
|
197
|
+
[part='suffix'] {
|
|
198
|
+
flex: none;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
[part='label'] {
|
|
202
|
+
white-space: nowrap;
|
|
203
|
+
overflow: hidden;
|
|
204
|
+
text-overflow: ellipsis;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
@media (forced-colors: active) {
|
|
208
|
+
:host {
|
|
209
|
+
outline: 1px solid;
|
|
210
|
+
outline-offset: -1px;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
:host([focused]) {
|
|
214
|
+
outline-width: 2px;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
:host([disabled]) {
|
|
218
|
+
outline-color: GrayText;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
`;var c=o(84467),h=o(53149),u=o(36176);const m=t=>class extends((0,c.e)((0,u.l)((0,h.y)(t)))){static get properties(){return{tabindex:{type:Number,value:0,reflectToAttribute:!0}}}get _activeKeys(){return["Enter"," "]}ready(){super.ready(),this.hasAttribute("role")||this.setAttribute("role","button")}_onKeyDown(t){super._onKeyDown(t),t.altKey||t.shiftKey||t.ctrlKey||t.metaKey||this._activeKeys.includes(t.key)&&(t.preventDefault(),this.click())}};(0,l.SF)("vaadin-button",d,{moduleId:"vaadin-button-styles"});class b extends(m((0,n.q)((0,l.cp)((0,r.w)(a.Pu))))){static get is(){return"vaadin-button"}static get template(){return a.qy`
|
|
222
|
+
<div class="vaadin-button-container">
|
|
223
|
+
<span part="prefix" aria-hidden="true">
|
|
224
|
+
<slot name="prefix"></slot>
|
|
225
|
+
</span>
|
|
226
|
+
<span part="label">
|
|
227
|
+
<slot></slot>
|
|
228
|
+
</span>
|
|
229
|
+
<span part="suffix" aria-hidden="true">
|
|
230
|
+
<slot name="suffix"></slot>
|
|
231
|
+
</span>
|
|
232
|
+
</div>
|
|
233
|
+
<slot name="tooltip"></slot>
|
|
234
|
+
`}ready(){super.ready(),this._tooltipController=new s.I(this),this.addController(this._tooltipController)}}(0,i.X)(b)},93555:(t,e,o)=>{o.d(e,{x:()=>r}),o(64511),o(42068),o(9433),o(3241),o(83315);var a=o(87550);const r=a.AH`
|
|
235
|
+
:host {
|
|
236
|
+
/* Sizing */
|
|
237
|
+
--lumo-button-size: var(--lumo-size-m);
|
|
238
|
+
min-width: var(--vaadin-button-min-width, calc(var(--_button-size) * 2));
|
|
239
|
+
height: var(--_button-size);
|
|
240
|
+
padding: var(--vaadin-button-padding, 0 calc(var(--_button-size) / 3 + var(--lumo-border-radius-m) / 2));
|
|
241
|
+
margin: var(--vaadin-button-margin, var(--lumo-space-xs) 0);
|
|
242
|
+
box-sizing: border-box;
|
|
243
|
+
/* Style */
|
|
244
|
+
font-family: var(--lumo-font-family);
|
|
245
|
+
font-size: var(--vaadin-button-font-size, var(--lumo-font-size-m));
|
|
246
|
+
font-weight: var(--vaadin-button-font-weight, 500);
|
|
247
|
+
color: var(--_lumo-button-text-color);
|
|
248
|
+
background: var(--_lumo-button-background);
|
|
249
|
+
border: var(--vaadin-button-border, none);
|
|
250
|
+
border-radius: var(--vaadin-button-border-radius, var(--lumo-border-radius-m));
|
|
251
|
+
cursor: var(--lumo-clickable-cursor);
|
|
252
|
+
-webkit-tap-highlight-color: transparent;
|
|
253
|
+
-webkit-font-smoothing: antialiased;
|
|
254
|
+
-moz-osx-font-smoothing: grayscale;
|
|
255
|
+
flex-shrink: 0;
|
|
256
|
+
--_button-size: var(--vaadin-button-height, var(--lumo-button-size));
|
|
257
|
+
--_focus-ring-color: var(--vaadin-focus-ring-color, var(--lumo-primary-color-50pct));
|
|
258
|
+
--_focus-ring-width: var(--vaadin-focus-ring-width, 2px);
|
|
259
|
+
/* Used by notification */
|
|
260
|
+
--_lumo-button-background: var(--vaadin-button-background, var(--lumo-contrast-5pct));
|
|
261
|
+
--_lumo-button-text-color: var(--vaadin-button-text-color, var(--lumo-primary-text-color));
|
|
262
|
+
--_lumo-button-primary-background: var(--vaadin-button-primary-background, var(--lumo-primary-color));
|
|
263
|
+
--_lumo-button-primary-text-color: var(--vaadin-button-primary-text-color, var(--lumo-primary-contrast-color));
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
/* Set only for the internal parts so we don't affect the host vertical alignment */
|
|
267
|
+
[part='label'],
|
|
268
|
+
[part='prefix'],
|
|
269
|
+
[part='suffix'] {
|
|
270
|
+
line-height: var(--lumo-line-height-xs);
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
[part='label'] {
|
|
274
|
+
padding: calc(var(--lumo-button-size) / 6) 0;
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
:host([theme~='small']) {
|
|
278
|
+
font-size: var(--lumo-font-size-s);
|
|
279
|
+
--lumo-button-size: var(--lumo-size-s);
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
:host([theme~='large']) {
|
|
283
|
+
font-size: var(--lumo-font-size-l);
|
|
284
|
+
--lumo-button-size: var(--lumo-size-l);
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
/* For interaction states */
|
|
288
|
+
:host::before,
|
|
289
|
+
:host::after {
|
|
290
|
+
content: '';
|
|
291
|
+
/* We rely on the host always being relative */
|
|
292
|
+
position: absolute;
|
|
293
|
+
z-index: 1;
|
|
294
|
+
inset: 0;
|
|
295
|
+
background-color: currentColor;
|
|
296
|
+
border-radius: inherit;
|
|
297
|
+
opacity: 0;
|
|
298
|
+
pointer-events: none;
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
/* Hover */
|
|
302
|
+
|
|
303
|
+
@media (any-hover: hover) {
|
|
304
|
+
:host(:hover)::before {
|
|
305
|
+
opacity: 0.02;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
/* Active */
|
|
310
|
+
|
|
311
|
+
:host::after {
|
|
312
|
+
transition: opacity 1.4s, transform 0.1s;
|
|
313
|
+
filter: blur(8px);
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
:host([active])::before {
|
|
317
|
+
opacity: 0.05;
|
|
318
|
+
transition-duration: 0s;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
:host([active])::after {
|
|
322
|
+
opacity: 0.1;
|
|
323
|
+
transition-duration: 0s, 0s;
|
|
324
|
+
transform: scale(0);
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
/* Keyboard focus */
|
|
328
|
+
|
|
329
|
+
:host([focus-ring]) {
|
|
330
|
+
box-shadow: 0 0 0 var(--_focus-ring-width) var(--_focus-ring-color);
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
:host([theme~='primary'][focus-ring]) {
|
|
334
|
+
box-shadow: 0 0 0 1px var(--lumo-base-color), 0 0 0 3px var(--lumo-primary-color-50pct);
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
/* Types (primary, tertiary, tertiary-inline */
|
|
338
|
+
|
|
339
|
+
:host([theme~='tertiary']),
|
|
340
|
+
:host([theme~='tertiary-inline']) {
|
|
341
|
+
--_background: transparent !important;
|
|
342
|
+
background: var(--vaadin-button-tertiary-background, var(--_background));
|
|
343
|
+
min-width: 0;
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
:host([theme~='tertiary']) {
|
|
347
|
+
border: var(--vaadin-button-tertiary-border, none);
|
|
348
|
+
color: var(--vaadin-button-tertiary-text-color, var(--lumo-primary-text-color));
|
|
349
|
+
font-weight: var(--vaadin-button-tertiary-font-weight, 500);
|
|
350
|
+
padding: var(--vaadin-button-tertiary-padding, 0 calc(var(--_button-size) / 6));
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
:host([theme~='tertiary-inline'])::before {
|
|
354
|
+
display: none;
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
:host([theme~='tertiary-inline']) {
|
|
358
|
+
margin: 0;
|
|
359
|
+
height: auto;
|
|
360
|
+
padding: 0;
|
|
361
|
+
line-height: inherit;
|
|
362
|
+
font-size: inherit;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
:host([theme~='tertiary-inline']) [part='label'] {
|
|
366
|
+
padding: 0;
|
|
367
|
+
overflow: visible;
|
|
368
|
+
line-height: inherit;
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
:host([theme~='primary']) {
|
|
372
|
+
background: var(--_lumo-button-primary-background);
|
|
373
|
+
border: var(--vaadin-button-primary-border, none);
|
|
374
|
+
color: var(--_lumo-button-primary-text-color);
|
|
375
|
+
font-weight: var(--vaadin-button-primary-font-weight, 600);
|
|
376
|
+
min-width: calc(var(--lumo-button-size) * 2.5);
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
:host([theme~='primary'])::before {
|
|
380
|
+
background-color: black;
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
@media (any-hover: hover) {
|
|
384
|
+
:host([theme~='primary']:hover)::before {
|
|
385
|
+
opacity: 0.05;
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
:host([theme~='primary'][active])::before {
|
|
390
|
+
opacity: 0.1;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
:host([theme~='primary'][active])::after {
|
|
394
|
+
opacity: 0.2;
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
/* Colors (success, error, contrast) */
|
|
398
|
+
|
|
399
|
+
:host([theme~='success']) {
|
|
400
|
+
color: var(--lumo-success-text-color);
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
:host([theme~='success'][theme~='primary']) {
|
|
404
|
+
background-color: var(--lumo-success-color);
|
|
405
|
+
color: var(--lumo-success-contrast-color);
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
:host([theme~='error']) {
|
|
409
|
+
color: var(--lumo-error-text-color);
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
:host([theme~='error'][theme~='primary']) {
|
|
413
|
+
background-color: var(--lumo-error-color);
|
|
414
|
+
color: var(--lumo-error-contrast-color);
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
:host([theme~='contrast']) {
|
|
418
|
+
color: var(--lumo-contrast);
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
:host([theme~='contrast'][theme~='primary']) {
|
|
422
|
+
background-color: var(--lumo-contrast);
|
|
423
|
+
color: var(--lumo-base-color);
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
/* Disabled state. Keep selectors after other color variants. */
|
|
427
|
+
|
|
428
|
+
:host([disabled]) {
|
|
429
|
+
pointer-events: none;
|
|
430
|
+
color: var(--lumo-disabled-text-color);
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
:host([theme~='primary'][disabled]) {
|
|
434
|
+
background-color: var(--lumo-contrast-30pct);
|
|
435
|
+
color: var(--lumo-base-color);
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
:host([theme~='primary'][disabled]) [part] {
|
|
439
|
+
opacity: 0.7;
|
|
440
|
+
}
|
|
441
|
+
|
|
442
|
+
/* Icons */
|
|
443
|
+
|
|
444
|
+
[part] ::slotted(vaadin-icon) {
|
|
445
|
+
display: inline-block;
|
|
446
|
+
width: var(--lumo-icon-size-m);
|
|
447
|
+
height: var(--lumo-icon-size-m);
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
/* Vaadin icons are based on a 16x16 grid (unlike Lumo and Material icons with 24x24), so they look too big by default */
|
|
451
|
+
[part] ::slotted(vaadin-icon[icon^='vaadin:']) {
|
|
452
|
+
padding: 0.25em;
|
|
453
|
+
box-sizing: border-box !important;
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
[part='prefix'] {
|
|
457
|
+
margin-left: -0.25em;
|
|
458
|
+
margin-right: 0.25em;
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
[part='suffix'] {
|
|
462
|
+
margin-left: 0.25em;
|
|
463
|
+
margin-right: -0.25em;
|
|
464
|
+
}
|
|
465
|
+
|
|
466
|
+
/* Icon-only */
|
|
467
|
+
|
|
468
|
+
:host([theme~='icon']:not([theme~='tertiary-inline'])) {
|
|
469
|
+
min-width: var(--lumo-button-size);
|
|
470
|
+
padding-left: calc(var(--lumo-button-size) / 4);
|
|
471
|
+
padding-right: calc(var(--lumo-button-size) / 4);
|
|
472
|
+
}
|
|
473
|
+
|
|
474
|
+
:host([theme~='icon']) [part='prefix'],
|
|
475
|
+
:host([theme~='icon']) [part='suffix'] {
|
|
476
|
+
margin-left: 0;
|
|
477
|
+
margin-right: 0;
|
|
478
|
+
}
|
|
479
|
+
|
|
480
|
+
/* RTL specific styles */
|
|
481
|
+
|
|
482
|
+
:host([dir='rtl']) [part='prefix'] {
|
|
483
|
+
margin-left: 0.25em;
|
|
484
|
+
margin-right: -0.25em;
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
:host([dir='rtl']) [part='suffix'] {
|
|
488
|
+
margin-left: -0.25em;
|
|
489
|
+
margin-right: 0.25em;
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
:host([dir='rtl'][theme~='icon']) [part='prefix'],
|
|
493
|
+
:host([dir='rtl'][theme~='icon']) [part='suffix'] {
|
|
494
|
+
margin-left: 0;
|
|
495
|
+
margin-right: 0;
|
|
496
|
+
}
|
|
497
|
+
`;(0,a.SF)("vaadin-button",r,{moduleId:"lumo-button"})}}]);
|
|
498
|
+
//# sourceMappingURL=5263.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright (c) 2017 - 2023 Vaadin Ltd.
|
|
4
|
+
* This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @license
|
|
9
|
+
* Copyright (c) 2020 - 2023 Vaadin Ltd.
|
|
10
|
+
* This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* @license
|
|
15
|
+
* Copyright (c) 2021 - 2023 Vaadin Ltd.
|
|
16
|
+
* This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
|
|
17
|
+
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"5263.js","mappings":"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","sources":["webpack://@descope/web-components-ui/../../../node_modules/@vaadin/component-base/src/slot-styles-mixin.js","webpack://@descope/web-components-ui/../../../node_modules/@vaadin/vaadin-lumo-styles/user-colors.js","webpack://@descope/web-components-ui/../../../node_modules/@vaadin/avatar/theme/lumo/vaadin-avatar-styles.js","webpack://@descope/web-components-ui/../../../node_modules/@vaadin/avatar/src/vaadin-avatar-icons.js","webpack://@descope/web-components-ui/../../../node_modules/@vaadin/avatar/src/vaadin-avatar-mixin.js","webpack://@descope/web-components-ui/../../../node_modules/@vaadin/avatar/src/vaadin-avatar-styles.js","webpack://@descope/web-components-ui/../../../node_modules/@vaadin/avatar/src/vaadin-avatar.js","webpack://@descope/web-components-ui/../../../node_modules/@vaadin/button/src/vaadin-button-base.js","webpack://@descope/web-components-ui/../../../node_modules/@vaadin/button/src/vaadin-button-mixin.js","webpack://@descope/web-components-ui/../../../node_modules/@vaadin/button/src/vaadin-button.js","webpack://@descope/web-components-ui/../../../node_modules/@vaadin/button/theme/lumo/vaadin-button-styles.js"],"sourcesContent":["/**\n * @license\n * Copyright (c) 2021 - 2023 Vaadin Ltd.\n * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/\n */\nimport { dedupingMixin } from '@polymer/polymer/lib/utils/mixin.js';\n\nconst stylesMap = new WeakMap();\n\n/**\n * Get all the styles inserted into root.\n * @param {DocumentOrShadowRoot} root\n * @return {Set<string>}\n */\nfunction getRootStyles(root) {\n if (!stylesMap.has(root)) {\n stylesMap.set(root, new Set());\n }\n\n return stylesMap.get(root);\n}\n\n/**\n * Insert styles into the root.\n * @param {string} styles\n * @param {DocumentOrShadowRoot} root\n */\nfunction insertStyles(styles, root) {\n const style = document.createElement('style');\n if(window.DESCOPE_NONCE){\n style.setAttribute('nonce', window.DESCOPE_NONCE);\n }\n style.textContent = styles;\n\n if (root === document) {\n document.head.appendChild(style);\n } else {\n root.insertBefore(style, root.firstChild);\n }\n}\n\n/**\n * Mixin to insert styles into the outer scope to handle slotted components.\n * This is useful e.g. to hide native `<input type=\"number\">` controls.\n *\n * @polymerMixin\n */\nexport const SlotStylesMixin = dedupingMixin(\n (superclass) =>\n class SlotStylesMixinClass extends superclass {\n /**\n * List of styles to insert into root.\n * @protected\n */\n get slotStyles() {\n return {};\n }\n\n /** @protected */\n connectedCallback() {\n super.connectedCallback();\n\n this.__applySlotStyles();\n }\n\n /** @private */\n __applySlotStyles() {\n const root = this.getRootNode();\n const rootStyles = getRootStyles(root);\n\n this.slotStyles.forEach((styles) => {\n if (!rootStyles.has(styles)) {\n insertStyles(styles, root);\n rootStyles.add(styles);\n }\n });\n }\n },\n);\n","/**\n * @license\n * Copyright (c) 2017 - 2023 Vaadin Ltd.\n * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/\n */\nimport './version.js';\nimport { css } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';\nimport { addLumoGlobalStyles } from './global.js';\n\nconst userColors = css`\n :host {\n --vaadin-user-color-0: #df0b92;\n --vaadin-user-color-1: #650acc;\n --vaadin-user-color-2: #097faa;\n --vaadin-user-color-3: #ad6200;\n --vaadin-user-color-4: #bf16f3;\n --vaadin-user-color-5: #084391;\n --vaadin-user-color-6: #078836;\n }\n\n [theme~='dark'] {\n --vaadin-user-color-0: #ff66c7;\n --vaadin-user-color-1: #9d8aff;\n --vaadin-user-color-2: #8aff66;\n --vaadin-user-color-3: #ffbd66;\n --vaadin-user-color-4: #dc6bff;\n --vaadin-user-color-5: #66fffa;\n --vaadin-user-color-6: #e6ff66;\n }\n`;\n\naddLumoGlobalStyles('user-color-props', userColors);\nexport { userColors };\n","import '@vaadin/vaadin-lumo-styles/color.js';\nimport '@vaadin/vaadin-lumo-styles/sizing.js';\nimport '@vaadin/vaadin-lumo-styles/spacing.js';\nimport '@vaadin/vaadin-lumo-styles/style.js';\nimport '@vaadin/vaadin-lumo-styles/typography.js';\nimport '@vaadin/vaadin-lumo-styles/user-colors.js';\nimport { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';\n\nregisterStyles(\n 'vaadin-avatar',\n css`\n :host {\n color: var(--lumo-secondary-text-color);\n background-color: var(--lumo-contrast-10pct);\n border-radius: 50%;\n outline: none;\n cursor: default;\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n :host([has-color-index]) {\n color: var(--lumo-base-color);\n }\n\n :host([focus-ring]) {\n border-color: var(--vaadin-focus-ring-color, var(--lumo-primary-color-50pct));\n }\n\n [part='icon'],\n [part='abbr'] {\n fill: currentColor;\n }\n\n [part='abbr'] {\n font-family: var(--lumo-font-family);\n font-size: 2.4375em;\n font-weight: 500;\n }\n\n :host([theme~='xlarge']) [part='abbr'] {\n font-size: 2.5em;\n }\n\n :host([theme~='large']) [part='abbr'] {\n font-size: 2.375em;\n }\n\n :host([theme~='small']) [part='abbr'] {\n font-size: 2.75em;\n }\n\n :host([theme~='xsmall']) [part='abbr'] {\n font-size: 3em;\n }\n\n :host([theme~='xlarge']) {\n --vaadin-avatar-size: var(--lumo-size-xl);\n }\n\n :host([theme~='large']) {\n --vaadin-avatar-size: var(--lumo-size-l);\n }\n\n :host([theme~='small']) {\n --vaadin-avatar-size: var(--lumo-size-s);\n }\n\n :host([theme~='xsmall']) {\n --vaadin-avatar-size: var(--lumo-size-xs);\n }\n `,\n { moduleId: 'lumo-avatar' },\n);\n","/**\n * @license\n * Copyright (c) 2020 - 2023 Vaadin Ltd.\n * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/\n */\nconst template = document.createElement('template');\n\ntemplate.innerHTML = `\n <style nonce=${window.DESCOPE_NONCE}>\n @font-face {\n font-family: 'vaadin-avatar-icons';\n src: url('` + __webpack_public_path__ + `fonts/font-1949233557.woff');\n font-weight: normal;\n font-style: normal;\n }\n </style>\n`;\n\ndocument.head.appendChild(template.content);\n","/**\n * @license\n * Copyright (c) 2017 - 2023 Vaadin Ltd.\n * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/\n */\nimport { FocusMixin } from '@vaadin/a11y-base/src/focus-mixin.js';\n\n/**\n * A mixin providing common avatar functionality.\n *\n * @polymerMixin\n * @mixes FocusMixin\n */\nexport const AvatarMixin = (superClass) =>\n class AvatarMixinClass extends FocusMixin(superClass) {\n static get properties() {\n return {\n /**\n * The path to the image\n */\n img: {\n type: String,\n reflectToAttribute: true,\n observer: '__imgChanged',\n },\n\n /**\n * A shortened form of name that is displayed\n * in the avatar when `img` is not provided.\n */\n abbr: {\n type: String,\n reflectToAttribute: true,\n },\n\n /**\n * Full name of the user\n * used for the tooltip of the avatar.\n */\n name: {\n type: String,\n reflectToAttribute: true,\n },\n\n /**\n * Color index used for avatar background.\n * @attr {number} color-index\n */\n colorIndex: {\n type: Number,\n observer: '__colorIndexChanged',\n },\n\n /**\n * The object used to localize this component.\n * To change the default localization, replace the entire\n * _i18n_ object or just the property you want to modify.\n *\n * The object has the following JSON structure and default values:\n *\n * ```\n * {\n * // Translation of the anonymous user avatar tooltip.\n * anonymous: 'anonymous'\n * }\n * ```\n *\n * @type {!AvatarI18n}\n * @default {English/US}\n */\n i18n: {\n type: Object,\n value: () => {\n return {\n anonymous: 'anonymous',\n };\n },\n },\n\n /**\n * When true, the avatar has tooltip shown on hover and focus.\n * The tooltip text is based on the `name` and `abbr` properties.\n * When neither is provided, `i18n.anonymous` is used instead.\n * @attr {boolean} with-tooltip\n */\n withTooltip: {\n type: Boolean,\n value: false,\n observer: '__withTooltipChanged',\n },\n\n /** @protected */\n __imgVisible: Boolean,\n\n /** @protected */\n __iconVisible: Boolean,\n\n /** @protected */\n __abbrVisible: Boolean,\n\n /** @private */\n __tooltipNode: Object,\n };\n }\n\n static get observers() {\n return [\n '__imgOrAbbrOrNameChanged(img, abbr, name)',\n '__i18nChanged(i18n)',\n '__tooltipChanged(__tooltipNode, name, abbr)',\n ];\n }\n\n /** @protected */\n ready() {\n super.ready();\n\n this.__updateVisibility();\n\n // By default, if the user hasn't provided a custom role,\n // the role attribute is set to \"button\".\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'button');\n }\n\n if (!this.hasAttribute('tabindex')) {\n this.setAttribute('tabindex', '0');\n }\n\n // Should set `anonymous` if name / abbr is not provided\n if (!this.name && !this.abbr) {\n this.__setTooltip();\n }\n }\n\n /** @private */\n __colorIndexChanged(index) {\n if (index != null) {\n const prop = `--vaadin-user-color-${index}`;\n\n // Check if custom CSS property is defined\n const isValid = Boolean(getComputedStyle(document.documentElement).getPropertyValue(prop));\n\n if (isValid) {\n this.setAttribute('has-color-index', '');\n this.style.setProperty('--vaadin-avatar-user-color', `var(${prop})`);\n } else {\n this.removeAttribute('has-color-index');\n console.warn(`The CSS property --vaadin-user-color-${index} is not defined`);\n }\n } else {\n this.removeAttribute('has-color-index');\n }\n }\n\n /** @private */\n __imgChanged() {\n this.__imgFailedToLoad = false;\n }\n\n /** @private */\n __imgOrAbbrOrNameChanged(img, abbr, name) {\n this.__updateVisibility();\n\n if (abbr && abbr !== this.__generatedAbbr) {\n return;\n }\n\n if (name) {\n this.abbr = this.__generatedAbbr = name\n .split(' ')\n .map((word) => word.charAt(0))\n .join('');\n } else {\n this.abbr = undefined;\n }\n }\n\n /** @private */\n __tooltipChanged(tooltipNode, name, abbr) {\n if (tooltipNode) {\n if (abbr && abbr !== this.__generatedAbbr) {\n this.__setTooltip(name ? `${name} (${abbr})` : abbr);\n } else {\n this.__setTooltip(name);\n }\n }\n }\n\n /** @private */\n __withTooltipChanged(withTooltip, oldWithTooltip) {\n if (withTooltip) {\n // Create and attach tooltip\n const tooltipNode = document.createElement('vaadin-tooltip');\n tooltipNode.setAttribute('slot', 'tooltip');\n this.appendChild(tooltipNode);\n this.__tooltipNode = tooltipNode;\n } else if (oldWithTooltip) {\n // Cleanup and detach tooltip\n this.__tooltipNode.target = null;\n this.__tooltipNode.remove();\n this.__tooltipNode = null;\n }\n }\n\n /** @private */\n __i18nChanged(i18n) {\n if (i18n && i18n.anonymous) {\n if (this.__oldAnonymous && this.__tooltipNode && this.__tooltipNode.text === this.__oldAnonymous) {\n this.__setTooltip();\n }\n\n this.__oldAnonymous = i18n.anonymous;\n }\n }\n\n /** @private */\n __updateVisibility() {\n this.__imgVisible = !!this.img && !this.__imgFailedToLoad;\n this.__abbrVisible = !this.__imgVisible && !!this.abbr;\n this.__iconVisible = !this.__imgVisible && !this.abbr;\n }\n\n /** @private */\n __setTooltip(tooltip) {\n const tooltipNode = this.__tooltipNode;\n if (tooltipNode) {\n tooltipNode.text = tooltip || this.i18n.anonymous;\n }\n }\n\n /** @protected */\n __onImageLoadError() {\n if (this.img) {\n console.warn(`<vaadin-avatar> The specified image could not be loaded: ${this.img}`);\n this.__imgFailedToLoad = true;\n this.__updateVisibility();\n }\n }\n };\n","/**\n * @license\n * Copyright (c) 2017 - 2023 Vaadin Ltd.\n * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/\n */\nimport { css } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';\n\nexport const avatarStyles = css`\n :host {\n display: inline-block;\n flex: none;\n border-radius: 50%;\n overflow: hidden;\n height: var(--vaadin-avatar-size, 64px);\n width: var(--vaadin-avatar-size, 64px);\n border: var(--vaadin-avatar-outline-width) solid transparent;\n margin: calc(var(--vaadin-avatar-outline-width) * -1);\n background-clip: content-box;\n --vaadin-avatar-outline-width: var(--vaadin-focus-ring-width, 2px);\n }\n\n img {\n height: 100%;\n width: 100%;\n object-fit: cover;\n }\n\n [part='icon'] {\n font-size: 5.6em;\n }\n\n [part='abbr'] {\n font-size: 2.2em;\n }\n\n [part='icon'] > text {\n font-family: 'vaadin-avatar-icons';\n }\n\n :host([hidden]) {\n display: none !important;\n }\n\n svg[hidden] {\n display: none !important;\n }\n\n :host([has-color-index]) {\n position: relative;\n background-color: var(--vaadin-avatar-user-color);\n }\n\n :host([has-color-index])::before {\n position: absolute;\n content: '';\n inset: 0;\n border-radius: inherit;\n box-shadow: inset 0 0 0 2px var(--vaadin-avatar-user-color);\n }\n`;\n","/**\n * @license\n * Copyright (c) 2020 - 2023 Vaadin Ltd.\n * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/\n */\nimport './vaadin-avatar-icons.js';\nimport { html, PolymerElement } from '@polymer/polymer/polymer-element.js';\nimport { ControllerMixin } from '@vaadin/component-base/src/controller-mixin.js';\nimport { defineCustomElement } from '@vaadin/component-base/src/define.js';\nimport { ElementMixin } from '@vaadin/component-base/src/element-mixin.js';\nimport { TooltipController } from '@vaadin/component-base/src/tooltip-controller.js';\nimport { registerStyles, ThemableMixin } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';\nimport { AvatarMixin } from './vaadin-avatar-mixin.js';\nimport { avatarStyles } from './vaadin-avatar-styles.js';\n\nregisterStyles('vaadin-avatar', avatarStyles, { moduleId: 'vaadin-avatar-styles' });\n\n/**\n * `<vaadin-avatar>` is a Web Component providing avatar displaying functionality.\n *\n * ```html\n * <vaadin-avatar img=\"avatars/avatar-1.jpg\"></vaadin-avatar>\n * ```\n *\n * ### Styling\n *\n * The following shadow DOM parts are exposed for styling:\n *\n * Part name | Description\n * --------- | ---------------\n * `abbr` | The abbreviation element\n * `icon` | The icon element\n *\n * The following state attributes are available for styling:\n *\n * Attribute | Description\n * ------------------|-------------\n * `focus-ring` | Set when the avatar is focused using the keyboard.\n * `focused` | Set when the avatar is focused.\n * `has-color-index` | Set when the avatar has `colorIndex` and the corresponding custom CSS property exists.\n *\n * See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.\n *\n * @customElement\n * @extends HTMLElement\n * @mixes AvatarMixin\n * @mixes ControllerMixin\n * @mixes ElementMixin\n * @mixes ThemableMixin\n */\nclass Avatar extends AvatarMixin(ElementMixin(ThemableMixin(ControllerMixin(PolymerElement)))) {\n static get template() {\n return html`\n <img hidden$=\"[[!__imgVisible]]\" src$=\"[[img]]\" aria-hidden=\"true\" on-error=\"__onImageLoadError\" />\n <svg\n part=\"icon\"\n hidden$=\"[[!__iconVisible]]\"\n id=\"avatar-icon\"\n viewBox=\"-50 -50 100 100\"\n preserveAspectRatio=\"xMidYMid meet\"\n aria-hidden=\"true\"\n >\n <text dy=\".35em\" text-anchor=\"middle\"></text>\n </svg>\n <svg\n part=\"abbr\"\n hidden$=\"[[!__abbrVisible]]\"\n id=\"avatar-abbr\"\n viewBox=\"-50 -50 100 100\"\n preserveAspectRatio=\"xMidYMid meet\"\n aria-hidden=\"true\"\n >\n <text dy=\".35em\" text-anchor=\"middle\">[[abbr]]</text>\n </svg>\n\n <slot name=\"tooltip\"></slot>\n `;\n }\n\n static get is() {\n return 'vaadin-avatar';\n }\n\n /** @protected */\n ready() {\n super.ready();\n\n this._tooltipController = new TooltipController(this);\n this.addController(this._tooltipController);\n }\n}\n\ndefineCustomElement(Avatar);\n\nexport { Avatar };\n","/**\n * @license\n * Copyright (c) 2017 - 2023 Vaadin Ltd.\n * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/\n */\nimport { css } from 'lit';\n\nexport const buttonStyles = css`\n :host {\n display: inline-block;\n position: relative;\n outline: none;\n white-space: nowrap;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n }\n\n :host([hidden]) {\n display: none !important;\n }\n\n /* Aligns the button with form fields when placed on the same line.\n Note, to make it work, the form fields should have the same \"::before\" pseudo-element. */\n .vaadin-button-container::before {\n content: '\\\\2003';\n display: inline-block;\n width: 0;\n max-height: 100%;\n }\n\n .vaadin-button-container {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n width: 100%;\n height: 100%;\n min-height: inherit;\n text-shadow: inherit;\n }\n\n [part='prefix'],\n [part='suffix'] {\n flex: none;\n }\n\n [part='label'] {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n @media (forced-colors: active) {\n :host {\n outline: 1px solid;\n outline-offset: -1px;\n }\n\n :host([focused]) {\n outline-width: 2px;\n }\n\n :host([disabled]) {\n outline-color: GrayText;\n }\n }\n`;\n\nexport const buttonTemplate = (html) => html`\n <div class=\"vaadin-button-container\">\n <span part=\"prefix\" aria-hidden=\"true\">\n <slot name=\"prefix\"></slot>\n </span>\n <span part=\"label\">\n <slot></slot>\n </span>\n <span part=\"suffix\" aria-hidden=\"true\">\n <slot name=\"suffix\"></slot>\n </span>\n </div>\n <slot name=\"tooltip\"></slot>\n`;\n","/**\n * @license\n * Copyright (c) 2017 - 2023 Vaadin Ltd.\n * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/\n */\nimport { ActiveMixin } from '@vaadin/a11y-base/src/active-mixin.js';\nimport { FocusMixin } from '@vaadin/a11y-base/src/focus-mixin.js';\nimport { TabindexMixin } from '@vaadin/a11y-base/src/tabindex-mixin.js';\n\n/**\n * A mixin providing common button functionality.\n *\n * @polymerMixin\n * @mixes ActiveMixin\n * @mixes FocusMixin\n * @mixes TabindexMixin\n */\nexport const ButtonMixin = (superClass) =>\n class ButtonMixinClass extends ActiveMixin(TabindexMixin(FocusMixin(superClass))) {\n static get properties() {\n return {\n /**\n * Indicates whether the element can be focused and where it participates in sequential keyboard navigation.\n *\n * @override\n * @protected\n */\n tabindex: {\n type: Number,\n value: 0,\n reflectToAttribute: true,\n },\n };\n }\n\n /**\n * By default, `Space` is the only possible activation key for a focusable HTML element.\n * Nonetheless, the button is an exception as it can be also activated by pressing `Enter`.\n * See the \"Keyboard Support\" section in https://www.w3.org/TR/wai-aria-practices/examples/button/button.html.\n *\n * @protected\n * @override\n */\n get _activeKeys() {\n return ['Enter', ' '];\n }\n\n /** @protected */\n ready() {\n super.ready();\n\n // By default, if the user hasn't provided a custom role,\n // the role attribute is set to \"button\".\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'button');\n }\n }\n\n /**\n * Since the button component is designed on the base of the `[role=button]` attribute,\n * and doesn't have a native <button> inside, in order to be fully accessible from the keyboard,\n * it should manually fire the `click` event once an activation key is pressed,\n * as it follows from the WAI-ARIA specifications:\n * https://www.w3.org/TR/wai-aria-practices-1.1/#button\n *\n * According to the UI Events specifications,\n * the `click` event should be fired exactly on `keydown`:\n * https://www.w3.org/TR/uievents/#event-type-keydown\n *\n * @param {KeyboardEvent} event\n * @protected\n * @override\n */\n _onKeyDown(event) {\n super._onKeyDown(event);\n\n if (event.altKey || event.shiftKey || event.ctrlKey || event.metaKey) {\n return;\n }\n\n if (this._activeKeys.includes(event.key)) {\n event.preventDefault();\n\n // `DisabledMixin` overrides the standard `click()` method\n // so that it doesn't fire the `click` event when the element is disabled.\n this.click();\n }\n }\n };\n","/**\n * @license\n * Copyright (c) 2017 - 2023 Vaadin Ltd.\n * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/\n */\nimport { html, PolymerElement } from '@polymer/polymer/polymer-element.js';\nimport { ControllerMixin } from '@vaadin/component-base/src/controller-mixin.js';\nimport { defineCustomElement } from '@vaadin/component-base/src/define.js';\nimport { ElementMixin } from '@vaadin/component-base/src/element-mixin.js';\nimport { TooltipController } from '@vaadin/component-base/src/tooltip-controller.js';\nimport { registerStyles, ThemableMixin } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';\nimport { buttonStyles, buttonTemplate } from './vaadin-button-base.js';\nimport { ButtonMixin } from './vaadin-button-mixin.js';\n\nregisterStyles('vaadin-button', buttonStyles, { moduleId: 'vaadin-button-styles' });\n\n/**\n * `<vaadin-button>` is an accessible and customizable button that allows users to perform actions.\n *\n * ```html\n * <vaadin-button>Press me</vaadin-button>\n * ```\n *\n * ### Styling\n *\n * The following shadow DOM parts are available for styling:\n *\n * Part name | Description\n * ----------|-------------\n * `label` | The label (text) inside the button.\n * `prefix` | A slot for content before the label (e.g. an icon).\n * `suffix` | A slot for content after the label (e.g. an icon).\n *\n * The following attributes are available for styling:\n *\n * Attribute | Description\n * -------------|-------------\n * `active` | Set when the button is pressed down, either with mouse, touch or the keyboard.\n * `disabled` | Set when the button is disabled.\n * `focus-ring` | Set when the button is focused using the keyboard.\n * `focused` | Set when the button is focused.\n *\n * See [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.\n *\n * @customElement\n * @extends HTMLElement\n * @mixes ButtonMixin\n * @mixes ControllerMixin\n * @mixes ElementMixin\n * @mixes ThemableMixin\n */\nclass Button extends ButtonMixin(ElementMixin(ThemableMixin(ControllerMixin(PolymerElement)))) {\n static get is() {\n return 'vaadin-button';\n }\n\n static get template() {\n return buttonTemplate(html);\n }\n\n /** @protected */\n ready() {\n super.ready();\n\n this._tooltipController = new TooltipController(this);\n this.addController(this._tooltipController);\n }\n}\n\ndefineCustomElement(Button);\n\nexport { Button };\n","import '@vaadin/vaadin-lumo-styles/color.js';\nimport '@vaadin/vaadin-lumo-styles/sizing.js';\nimport '@vaadin/vaadin-lumo-styles/spacing.js';\nimport '@vaadin/vaadin-lumo-styles/style.js';\nimport '@vaadin/vaadin-lumo-styles/typography.js';\nimport { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';\n\nconst button = css`\n :host {\n /* Sizing */\n --lumo-button-size: var(--lumo-size-m);\n min-width: var(--vaadin-button-min-width, calc(var(--_button-size) * 2));\n height: var(--_button-size);\n padding: var(--vaadin-button-padding, 0 calc(var(--_button-size) / 3 + var(--lumo-border-radius-m) / 2));\n margin: var(--vaadin-button-margin, var(--lumo-space-xs) 0);\n box-sizing: border-box;\n /* Style */\n font-family: var(--lumo-font-family);\n font-size: var(--vaadin-button-font-size, var(--lumo-font-size-m));\n font-weight: var(--vaadin-button-font-weight, 500);\n color: var(--_lumo-button-text-color);\n background: var(--_lumo-button-background);\n border: var(--vaadin-button-border, none);\n border-radius: var(--vaadin-button-border-radius, var(--lumo-border-radius-m));\n cursor: var(--lumo-clickable-cursor);\n -webkit-tap-highlight-color: transparent;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n flex-shrink: 0;\n --_button-size: var(--vaadin-button-height, var(--lumo-button-size));\n --_focus-ring-color: var(--vaadin-focus-ring-color, var(--lumo-primary-color-50pct));\n --_focus-ring-width: var(--vaadin-focus-ring-width, 2px);\n /* Used by notification */\n --_lumo-button-background: var(--vaadin-button-background, var(--lumo-contrast-5pct));\n --_lumo-button-text-color: var(--vaadin-button-text-color, var(--lumo-primary-text-color));\n --_lumo-button-primary-background: var(--vaadin-button-primary-background, var(--lumo-primary-color));\n --_lumo-button-primary-text-color: var(--vaadin-button-primary-text-color, var(--lumo-primary-contrast-color));\n }\n\n /* Set only for the internal parts so we don't affect the host vertical alignment */\n [part='label'],\n [part='prefix'],\n [part='suffix'] {\n line-height: var(--lumo-line-height-xs);\n }\n\n [part='label'] {\n padding: calc(var(--lumo-button-size) / 6) 0;\n }\n\n :host([theme~='small']) {\n font-size: var(--lumo-font-size-s);\n --lumo-button-size: var(--lumo-size-s);\n }\n\n :host([theme~='large']) {\n font-size: var(--lumo-font-size-l);\n --lumo-button-size: var(--lumo-size-l);\n }\n\n /* For interaction states */\n :host::before,\n :host::after {\n content: '';\n /* We rely on the host always being relative */\n position: absolute;\n z-index: 1;\n inset: 0;\n background-color: currentColor;\n border-radius: inherit;\n opacity: 0;\n pointer-events: none;\n }\n\n /* Hover */\n\n @media (any-hover: hover) {\n :host(:hover)::before {\n opacity: 0.02;\n }\n }\n\n /* Active */\n\n :host::after {\n transition: opacity 1.4s, transform 0.1s;\n filter: blur(8px);\n }\n\n :host([active])::before {\n opacity: 0.05;\n transition-duration: 0s;\n }\n\n :host([active])::after {\n opacity: 0.1;\n transition-duration: 0s, 0s;\n transform: scale(0);\n }\n\n /* Keyboard focus */\n\n :host([focus-ring]) {\n box-shadow: 0 0 0 var(--_focus-ring-width) var(--_focus-ring-color);\n }\n\n :host([theme~='primary'][focus-ring]) {\n box-shadow: 0 0 0 1px var(--lumo-base-color), 0 0 0 3px var(--lumo-primary-color-50pct);\n }\n\n /* Types (primary, tertiary, tertiary-inline */\n\n :host([theme~='tertiary']),\n :host([theme~='tertiary-inline']) {\n --_background: transparent !important;\n background: var(--vaadin-button-tertiary-background, var(--_background));\n min-width: 0;\n }\n\n :host([theme~='tertiary']) {\n border: var(--vaadin-button-tertiary-border, none);\n color: var(--vaadin-button-tertiary-text-color, var(--lumo-primary-text-color));\n font-weight: var(--vaadin-button-tertiary-font-weight, 500);\n padding: var(--vaadin-button-tertiary-padding, 0 calc(var(--_button-size) / 6));\n }\n\n :host([theme~='tertiary-inline'])::before {\n display: none;\n }\n\n :host([theme~='tertiary-inline']) {\n margin: 0;\n height: auto;\n padding: 0;\n line-height: inherit;\n font-size: inherit;\n }\n\n :host([theme~='tertiary-inline']) [part='label'] {\n padding: 0;\n overflow: visible;\n line-height: inherit;\n }\n\n :host([theme~='primary']) {\n background: var(--_lumo-button-primary-background);\n border: var(--vaadin-button-primary-border, none);\n color: var(--_lumo-button-primary-text-color);\n font-weight: var(--vaadin-button-primary-font-weight, 600);\n min-width: calc(var(--lumo-button-size) * 2.5);\n }\n\n :host([theme~='primary'])::before {\n background-color: black;\n }\n\n @media (any-hover: hover) {\n :host([theme~='primary']:hover)::before {\n opacity: 0.05;\n }\n }\n\n :host([theme~='primary'][active])::before {\n opacity: 0.1;\n }\n\n :host([theme~='primary'][active])::after {\n opacity: 0.2;\n }\n\n /* Colors (success, error, contrast) */\n\n :host([theme~='success']) {\n color: var(--lumo-success-text-color);\n }\n\n :host([theme~='success'][theme~='primary']) {\n background-color: var(--lumo-success-color);\n color: var(--lumo-success-contrast-color);\n }\n\n :host([theme~='error']) {\n color: var(--lumo-error-text-color);\n }\n\n :host([theme~='error'][theme~='primary']) {\n background-color: var(--lumo-error-color);\n color: var(--lumo-error-contrast-color);\n }\n\n :host([theme~='contrast']) {\n color: var(--lumo-contrast);\n }\n\n :host([theme~='contrast'][theme~='primary']) {\n background-color: var(--lumo-contrast);\n color: var(--lumo-base-color);\n }\n\n /* Disabled state. Keep selectors after other color variants. */\n\n :host([disabled]) {\n pointer-events: none;\n color: var(--lumo-disabled-text-color);\n }\n\n :host([theme~='primary'][disabled]) {\n background-color: var(--lumo-contrast-30pct);\n color: var(--lumo-base-color);\n }\n\n :host([theme~='primary'][disabled]) [part] {\n opacity: 0.7;\n }\n\n /* Icons */\n\n [part] ::slotted(vaadin-icon) {\n display: inline-block;\n width: var(--lumo-icon-size-m);\n height: var(--lumo-icon-size-m);\n }\n\n /* Vaadin icons are based on a 16x16 grid (unlike Lumo and Material icons with 24x24), so they look too big by default */\n [part] ::slotted(vaadin-icon[icon^='vaadin:']) {\n padding: 0.25em;\n box-sizing: border-box !important;\n }\n\n [part='prefix'] {\n margin-left: -0.25em;\n margin-right: 0.25em;\n }\n\n [part='suffix'] {\n margin-left: 0.25em;\n margin-right: -0.25em;\n }\n\n /* Icon-only */\n\n :host([theme~='icon']:not([theme~='tertiary-inline'])) {\n min-width: var(--lumo-button-size);\n padding-left: calc(var(--lumo-button-size) / 4);\n padding-right: calc(var(--lumo-button-size) / 4);\n }\n\n :host([theme~='icon']) [part='prefix'],\n :host([theme~='icon']) [part='suffix'] {\n margin-left: 0;\n margin-right: 0;\n }\n\n /* RTL specific styles */\n\n :host([dir='rtl']) [part='prefix'] {\n margin-left: 0.25em;\n margin-right: -0.25em;\n }\n\n :host([dir='rtl']) [part='suffix'] {\n margin-left: -0.25em;\n margin-right: 0.25em;\n }\n\n :host([dir='rtl'][theme~='icon']) [part='prefix'],\n :host([dir='rtl'][theme~='icon']) [part='suffix'] {\n margin-left: 0;\n margin-right: 0;\n }\n`;\n\nregisterStyles('vaadin-button', button, { moduleId: 'lumo-button' });\n\nexport { button };\n"],"names":["stylesMap","WeakMap","SlotStylesMixin","superclass","slotStyles","connectedCallback","super","this","__applySlotStyles","root","getRootNode","rootStyles","has","set","Set","get","getRootStyles","forEach","styles","style","document","createElement","window","DESCOPE_NONCE","setAttribute","textContent","head","appendChild","insertBefore","firstChild","insertStyles","add","userColors","moduleId","template","innerHTML","content","AvatarMixin","superClass","properties","img","type","String","reflectToAttribute","observer","abbr","name","colorIndex","Number","i18n","Object","value","anonymous","withTooltip","Boolean","__imgVisible","__iconVisible","__abbrVisible","__tooltipNode","observers","ready","__updateVisibility","hasAttribute","__setTooltip","__colorIndexChanged","index","prop","getComputedStyle","documentElement","getPropertyValue","setProperty","removeAttribute","console","warn","__imgChanged","__imgFailedToLoad","__imgOrAbbrOrNameChanged","__generatedAbbr","split","map","word","charAt","join","undefined","__tooltipChanged","tooltipNode","__withTooltipChanged","oldWithTooltip","target","remove","__i18nChanged","__oldAnonymous","text","tooltip","__onImageLoadError","avatarStyles","Avatar","is","_tooltipController","addController","buttonStyles","ButtonMixin","tabindex","_activeKeys","_onKeyDown","event","altKey","shiftKey","ctrlKey","metaKey","includes","key","preventDefault","click","Button","button"],"sourceRoot":""}
|