@fluid-topics/ft-input-label 0.0.88

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 ADDED
@@ -0,0 +1,19 @@
1
+ Dynamic label with outline
2
+
3
+ ## Install
4
+
5
+ ```shell
6
+ npm install @fluid-topics/ft-input-label
7
+ yarn add @fluid-topics/ft-input-label
8
+ ```
9
+
10
+ ## Usage
11
+
12
+ ```typescript
13
+ import { html } from "lit"
14
+ import "@fluid-topics/ft-input-label"
15
+
16
+ function render() {
17
+ return html` <ft-input-label text="Input label" ></ft-input-label> `
18
+ }
19
+ ```
@@ -0,0 +1,25 @@
1
+ import { ElementDefinitionsMap, FtLitElement } from "@fluid-topics/ft-wc-utils";
2
+ export interface FtSelectProperties {
3
+ text?: string;
4
+ raised?: boolean;
5
+ outlined?: boolean;
6
+ disabled?: boolean;
7
+ }
8
+ export interface FtSelectCssVariables {
9
+ "--ft-input-label-font-size"?: string;
10
+ "--ft-input-label-raised-font-size"?: string;
11
+ "--ft-input-label-vertical-spacing"?: string;
12
+ "--ft-input-label-horizontal-spacing"?: string;
13
+ "--ft-input-label-border-color"?: string;
14
+ "--ft-input-label-text-color"?: string;
15
+ }
16
+ export declare class FtInputLabel extends FtLitElement implements FtSelectProperties {
17
+ static elementDefinitions: ElementDefinitionsMap;
18
+ protected getStyles(): import("lit").CSSResult[];
19
+ text: string;
20
+ raised: boolean;
21
+ outlined: boolean;
22
+ disabled: boolean;
23
+ protected getTemplate(): import("lit-html").TemplateResult<1>;
24
+ }
25
+ //# sourceMappingURL=ft-input-label.d.ts.map
@@ -0,0 +1,162 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { css, html } from "lit";
8
+ import { property } from "lit/decorators.js";
9
+ import { classMap } from "lit/directives/class-map.js";
10
+ import { customElement, FtLitElement } from "@fluid-topics/ft-wc-utils";
11
+ import { FtTypographyCaption } from "@fluid-topics/ft-typography";
12
+ let FtInputLabel = class FtInputLabel extends FtLitElement {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.text = "";
16
+ this.raised = false;
17
+ this.outlined = false;
18
+ this.disabled = false;
19
+ }
20
+ // language=CSS
21
+ getStyles() {
22
+ return [
23
+ FtTypographyCaption,
24
+ css `
25
+ .ft-input-label {
26
+ position: absolute;
27
+ inset: 0;
28
+ display: flex;
29
+ }
30
+
31
+ .ft-input-label {
32
+ border-color: var(--ft-input-label-border-color, var(--ft-color-outline, rgba(0, 0, 0, 0.14)));
33
+ }
34
+
35
+ .ft-input-label:before,
36
+ .ft-input-label:after {
37
+ content: "";
38
+ display: flex;
39
+ border-bottom-width: 1px;
40
+ border-bottom-style: solid;
41
+ border-color: inherit;
42
+ }
43
+
44
+ .ft-input-label:before {
45
+ width: var(--ft-input-label-horizontal-spacing, 12px);
46
+ flex-shrink: 0;
47
+ }
48
+
49
+ .ft-input-label:after {
50
+ flex-grow: 1;
51
+ flex-shrink: 1;
52
+ }
53
+
54
+ .ft-input-label--text {
55
+ display: flex;
56
+ flex-shrink: 1;
57
+ position: relative;
58
+ border-bottom-width: 1px;
59
+ border-bottom-style: solid;
60
+ border-color: inherit;
61
+ padding: 0 4px;
62
+ color: var(--ft-input-label-text-color, var(--ft-color-on-surface-medium, rgba(0, 0, 0, 0.60)));
63
+ transition: font-size 250ms, line-height 250ms, color 250ms;
64
+ --ft-typography-font-size: var(--ft-input-label-font-size, 14px);
65
+ --ft-typography-line-height: var(--ft-input-label-font-size, 14px);
66
+ }
67
+
68
+ .ft-input-label--disabled .ft-input-label--text {
69
+ color: var(--ft-input-label-text-color, var(--ft-color-on-surface-disabled, rgba(0, 0, 0, 0.38)));
70
+ }
71
+
72
+ .ft-input-label--hidden-text {
73
+ opacity: 0;
74
+ }
75
+
76
+ .ft-input-label--floating-text {
77
+ position: absolute;
78
+ top: calc(50% - var(--ft-typography-line-height) / 2);
79
+ transition: top 250ms;
80
+ width: calc(100% - 8px);
81
+ overflow: hidden;
82
+ white-space: nowrap;
83
+ text-overflow: ellipsis;
84
+ padding: var(--ft-input-label-vertical-spacing, 4px) 0;
85
+ margin: calc(var(--ft-input-label-vertical-spacing, 4px) * -1) 0;
86
+ }
87
+
88
+ .ft-input-label--raised .ft-input-label--text {
89
+ --ft-typography-font-size: var(--ft-input-label-raised-font-size, 11px);
90
+ --ft-typography-line-height: var(--ft-input-label-raised-font-size, 11px);
91
+ }
92
+
93
+ .ft-input-label--raised .ft-input-label--floating-text {
94
+ top: var(--ft-input-label-vertical-spacing, 4px);
95
+ }
96
+
97
+ .ft-input-label--outlined .ft-input-label--text,
98
+ .ft-input-label--outlined:before,
99
+ .ft-input-label--outlined:after {
100
+ border-top-width: 1px;
101
+ border-top-style: solid;
102
+ }
103
+
104
+ .ft-input-label--outlined:before {
105
+ border-left-width: 1px;
106
+ border-left-style: solid;
107
+ border-radius: var(--ft-border-radius-S, 4px) 0 0 var(--ft-border-radius-S, 4px);
108
+ }
109
+
110
+ .ft-input-label--outlined:after {
111
+ border-right-width: 1px;
112
+ border-right-style: solid;
113
+ border-radius: 0 var(--ft-border-radius-S, 4px) var(--ft-border-radius-S, 4px) 0;
114
+ }
115
+
116
+ .ft-input-label--outlined.ft-input-label--raised .ft-input-label--floating-text {
117
+ top: calc(var(--ft-typography-line-height) / -2);
118
+ }
119
+
120
+ .ft-input-label--outlined.ft-input-label--raised .ft-input-label--text {
121
+ border-top: none;
122
+ }
123
+ `
124
+ ];
125
+ }
126
+ getTemplate() {
127
+ const classes = {
128
+ "ft-input-label": true,
129
+ "ft-input-label--raised": this.raised,
130
+ "ft-input-label--outlined": this.outlined,
131
+ "ft-input-label--disabled": this.disabled
132
+ };
133
+ return html `
134
+ <div class="${classMap(classes)}">
135
+ ${this.text ? html `
136
+ <div class="ft-input-label--text ft-typography--caption">
137
+ <span class="ft-input-label--floating-text">${this.text}</span>
138
+ <span class="ft-input-label--hidden-text" aria-hidden="true">${this.text}</span>
139
+ </div>
140
+ ` : null}
141
+ </div>
142
+ `;
143
+ }
144
+ };
145
+ FtInputLabel.elementDefinitions = {};
146
+ __decorate([
147
+ property({ type: String })
148
+ ], FtInputLabel.prototype, "text", void 0);
149
+ __decorate([
150
+ property({ type: Boolean })
151
+ ], FtInputLabel.prototype, "raised", void 0);
152
+ __decorate([
153
+ property({ type: Boolean })
154
+ ], FtInputLabel.prototype, "outlined", void 0);
155
+ __decorate([
156
+ property({ type: Boolean })
157
+ ], FtInputLabel.prototype, "disabled", void 0);
158
+ FtInputLabel = __decorate([
159
+ customElement("ft-input-label")
160
+ ], FtInputLabel);
161
+ export { FtInputLabel };
162
+ //# sourceMappingURL=ft-input-label.js.map
@@ -0,0 +1,160 @@
1
+ !function(t){
2
+ /**
3
+ * @license
4
+ * Copyright 2019 Google LLC
5
+ * SPDX-License-Identifier: BSD-3-Clause
6
+ */
7
+ const i=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,e=Symbol(),n=new Map;class r{constructor(t,i){if(this._$cssResult$=!0,i!==e)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t}get styleSheet(){let t=n.get(this.cssText);return i&&void 0===t&&(n.set(this.cssText,t=new CSSStyleSheet),t.replaceSync(this.cssText)),t}toString(){return this.cssText}}const o=(t,...i)=>{const n=1===t.length?t[0]:i.reduce(((i,e,n)=>i+(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.")})(e)+t[n+1]),t[0]);return new r(n,e)},s=(t,e)=>{i?t.adoptedStyleSheets=e.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):e.forEach((i=>{const e=document.createElement("style"),n=window.litNonce;void 0!==n&&e.setAttribute("nonce",n),e.textContent=i.cssText,t.appendChild(e)}))},a=i?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let i="";for(const e of t.cssRules)i+=e.cssText;return(t=>new r("string"==typeof t?t:t+"",e))(i)})(t):t
8
+ /**
9
+ * @license
10
+ * Copyright 2017 Google LLC
11
+ * SPDX-License-Identifier: BSD-3-Clause
12
+ */;var l;const h=window.trustedTypes,f=h?h.emptyScript:"",p=window.reactiveElementPolyfillSupport,u={toAttribute(t,i){switch(i){case Boolean:t=t?f:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,i){let e=t;switch(i){case Boolean:e=null!==t;break;case Number:e=null===t?null:Number(t);break;case Object:case Array:try{e=JSON.parse(t)}catch(t){e=null}}return e}},c=(t,i)=>i!==t&&(i==i||t==t),y={attribute:!0,type:String,converter:u,reflect:!1,hasChanged:c};class v extends HTMLElement{constructor(){super(),this._$Et=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Ei=null,this.o()}static addInitializer(t){var i;null!==(i=this.l)&&void 0!==i||(this.l=[]),this.l.push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((i,e)=>{const n=this._$Eh(e,i);void 0!==n&&(this._$Eu.set(n,e),t.push(n))})),t}static createProperty(t,i=y){if(i.state&&(i.attribute=!1),this.finalize(),this.elementProperties.set(t,i),!i.noAccessor&&!this.prototype.hasOwnProperty(t)){const e="symbol"==typeof t?Symbol():"__"+t,n=this.getPropertyDescriptor(t,e,i);void 0!==n&&Object.defineProperty(this.prototype,t,n)}}static getPropertyDescriptor(t,i,e){return{get(){return this[i]},set(n){const r=this[t];this[i]=n,this.requestUpdate(t,r,e)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||y}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._$Eu=new Map,this.hasOwnProperty("properties")){const t=this.properties,i=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const e of i)this.createProperty(e,t[e])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(t){const i=[];if(Array.isArray(t)){const e=new Set(t.flat(1/0).reverse());for(const t of e)i.unshift(a(t))}else void 0!==t&&i.push(a(t));return i}static _$Eh(t,i){const e=i.attribute;return!1===e?void 0:"string"==typeof e?e:"string"==typeof t?t.toLowerCase():void 0}o(){var t;this._$Ep=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Em(),this.requestUpdate(),null===(t=this.constructor.l)||void 0===t||t.forEach((t=>t(this)))}addController(t){var i,e;(null!==(i=this._$Eg)&&void 0!==i?i:this._$Eg=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(e=t.hostConnected)||void 0===e||e.call(t))}removeController(t){var i;null===(i=this._$Eg)||void 0===i||i.splice(this._$Eg.indexOf(t)>>>0,1)}_$Em(){this.constructor.elementProperties.forEach(((t,i)=>{this.hasOwnProperty(i)&&(this._$Et.set(i,this[i]),delete this[i])}))}createRenderRoot(){var t;const i=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return s(i,this.constructor.elementStyles),i}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostConnected)||void 0===i?void 0:i.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostDisconnected)||void 0===i?void 0:i.call(t)}))}attributeChangedCallback(t,i,e){this._$AK(t,e)}_$ES(t,i,e=y){var n,r;const o=this.constructor._$Eh(t,e);if(void 0!==o&&!0===e.reflect){const s=(null!==(r=null===(n=e.converter)||void 0===n?void 0:n.toAttribute)&&void 0!==r?r:u.toAttribute)(i,e.type);this._$Ei=t,null==s?this.removeAttribute(o):this.setAttribute(o,s),this._$Ei=null}}_$AK(t,i){var e,n,r;const o=this.constructor,s=o._$Eu.get(t);if(void 0!==s&&this._$Ei!==s){const t=o.getPropertyOptions(s),a=t.converter,l=null!==(r=null!==(n=null===(e=a)||void 0===e?void 0:e.fromAttribute)&&void 0!==n?n:"function"==typeof a?a:null)&&void 0!==r?r:u.fromAttribute;this._$Ei=s,this[s]=l(i,t.type),this._$Ei=null}}requestUpdate(t,i,e){let n=!0;void 0!==t&&(((e=e||this.constructor.getPropertyOptions(t)).hasChanged||c)(this[t],i)?(this._$AL.has(t)||this._$AL.set(t,i),!0===e.reflect&&this._$Ei!==t&&(void 0===this._$E_&&(this._$E_=new Map),this._$E_.set(t,e))):n=!1),!this.isUpdatePending&&n&&(this._$Ep=this._$EC())}async _$EC(){this.isUpdatePending=!0;try{await this._$Ep}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._$Et&&(this._$Et.forEach(((t,i)=>this[i]=t)),this._$Et=void 0);let i=!1;const e=this._$AL;try{i=this.shouldUpdate(e),i?(this.willUpdate(e),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var i;return null===(i=t.hostUpdate)||void 0===i?void 0:i.call(t)})),this.update(e)):this._$EU()}catch(t){throw i=!1,this._$EU(),t}i&&this._$AE(e)}willUpdate(t){}_$AE(t){var i;null===(i=this._$Eg)||void 0===i||i.forEach((t=>{var i;return null===(i=t.hostUpdated)||void 0===i?void 0:i.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Ep}shouldUpdate(t){return!0}update(t){void 0!==this._$E_&&(this._$E_.forEach(((t,i)=>this._$ES(i,this[i],t))),this._$E_=void 0),this._$EU()}updated(t){}firstUpdated(t){}}
13
+ /**
14
+ * @license
15
+ * Copyright 2017 Google LLC
16
+ * SPDX-License-Identifier: BSD-3-Clause
17
+ */
18
+ var d;v.finalized=!0,v.elementProperties=new Map,v.elementStyles=[],v.shadowRootOptions={mode:"open"},null==p||p({ReactiveElement:v}),(null!==(l=globalThis.reactiveElementVersions)&&void 0!==l?l:globalThis.reactiveElementVersions=[]).push("1.2.2");const g=globalThis.trustedTypes,b=g?g.createPolicy("lit-html",{createHTML:t=>t}):void 0,m=`lit$${(Math.random()+"").slice(9)}$`,w="?"+m,x=`<${w}>`,S=document,$=(t="")=>S.createComment(t),O=t=>null===t||"object"!=typeof t&&"function"!=typeof t,z=Array.isArray,E=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,j=/-->/g,C=/>/g,M=/>|[ \n \r](?:([^\s"'>=/]+)([ \n \r]*=[ \n \r]*(?:[^ \n \r"'`<>=]|("|')|))|$)/g,A=/'/g,k=/"/g,T=/^(?:script|style|textarea|title)$/i,R=(t=>(i,...e)=>({_$litType$:t,strings:i,values:e}))(1),_=Symbol.for("lit-noChange"),U=Symbol.for("lit-nothing"),L=new WeakMap,H=S.createTreeWalker(S,129,null,!1),N=(t,i)=>{const e=t.length-1,n=[];let r,o=2===i?"<svg>":"",s=E;for(let i=0;i<e;i++){const e=t[i];let a,l,h=-1,f=0;for(;f<e.length&&(s.lastIndex=f,l=s.exec(e),null!==l);)f=s.lastIndex,s===E?"!--"===l[1]?s=j:void 0!==l[1]?s=C:void 0!==l[2]?(T.test(l[2])&&(r=RegExp("</"+l[2],"g")),s=M):void 0!==l[3]&&(s=M):s===M?">"===l[0]?(s=null!=r?r:E,h=-1):void 0===l[1]?h=-2:(h=s.lastIndex-l[2].length,a=l[1],s=void 0===l[3]?M:'"'===l[3]?k:A):s===k||s===A?s=M:s===j||s===C?s=E:(s=M,r=void 0);const p=s===M&&t[i+1].startsWith("/>")?" ":"";o+=s===E?e+x:h>=0?(n.push(a),e.slice(0,h)+"$lit$"+e.slice(h)+m+p):e+m+(-2===h?(n.push(void 0),i):p)}const a=o+(t[e]||"<?>")+(2===i?"</svg>":"");if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return[void 0!==b?b.createHTML(a):a,n]};class D{constructor({strings:t,_$litType$:i},e){let n;this.parts=[];let r=0,o=0;const s=t.length-1,a=this.parts,[l,h]=N(t,i);if(this.el=D.createElement(l,e),H.currentNode=this.el.content,2===i){const t=this.el.content,i=t.firstChild;i.remove(),t.append(...i.childNodes)}for(;null!==(n=H.nextNode())&&a.length<s;){if(1===n.nodeType){if(n.hasAttributes()){const t=[];for(const i of n.getAttributeNames())if(i.endsWith("$lit$")||i.startsWith(m)){const e=h[o++];if(t.push(i),void 0!==e){const t=n.getAttribute(e.toLowerCase()+"$lit$").split(m),i=/([.?@])?(.*)/.exec(e);a.push({type:1,index:r,name:i[2],strings:t,ctor:"."===i[1]?B:"?"===i[1]?J:"@"===i[1]?K:W})}else a.push({type:6,index:r})}for(const i of t)n.removeAttribute(i)}if(T.test(n.tagName)){const t=n.textContent.split(m),i=t.length-1;if(i>0){n.textContent=g?g.emptyScript:"";for(let e=0;e<i;e++)n.append(t[e],$()),H.nextNode(),a.push({type:2,index:++r});n.append(t[i],$())}}}else if(8===n.nodeType)if(n.data===w)a.push({type:2,index:r});else{let t=-1;for(;-1!==(t=n.data.indexOf(m,t+1));)a.push({type:7,index:r}),t+=m.length-1}r++}}static createElement(t,i){const e=S.createElement("template");return e.innerHTML=t,e}}function F(t,i,e=t,n){var r,o,s,a;if(i===_)return i;let l=void 0!==n?null===(r=e._$Cl)||void 0===r?void 0:r[n]:e._$Cu;const h=O(i)?void 0:i._$litDirective$;return(null==l?void 0:l.constructor)!==h&&(null===(o=null==l?void 0:l._$AO)||void 0===o||o.call(l,!1),void 0===h?l=void 0:(l=new h(t),l._$AT(t,e,n)),void 0!==n?(null!==(s=(a=e)._$Cl)&&void 0!==s?s:a._$Cl=[])[n]=l:e._$Cu=l),void 0!==l&&(i=F(t,l._$AS(t,i.values),l,n)),i}class I{constructor(t,i){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=i}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var i;const{el:{content:e},parts:n}=this._$AD,r=(null!==(i=null==t?void 0:t.creationScope)&&void 0!==i?i:S).importNode(e,!0);H.currentNode=r;let o=H.nextNode(),s=0,a=0,l=n[0];for(;void 0!==l;){if(s===l.index){let i;2===l.type?i=new P(o,o.nextSibling,this,t):1===l.type?i=new l.ctor(o,l.name,l.strings,this,t):6===l.type&&(i=new Z(o,this,t)),this.v.push(i),l=n[++a]}s!==(null==l?void 0:l.index)&&(o=H.nextNode(),s++)}return r}m(t){let i=0;for(const e of this.v)void 0!==e&&(void 0!==e.strings?(e._$AI(t,e,i),i+=e.strings.length-2):e._$AI(t[i])),i++}}class P{constructor(t,i,e,n){var r;this.type=2,this._$AH=U,this._$AN=void 0,this._$AA=t,this._$AB=i,this._$AM=e,this.options=n,this._$Cg=null===(r=null==n?void 0:n.isConnected)||void 0===r||r}get _$AU(){var t,i;return null!==(i=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==i?i:this._$Cg}get parentNode(){let t=this._$AA.parentNode;const i=this._$AM;return void 0!==i&&11===t.nodeType&&(t=i.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,i=this){t=F(this,t,i),O(t)?t===U||null==t||""===t?(this._$AH!==U&&this._$AR(),this._$AH=U):t!==this._$AH&&t!==_&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.S(t):(t=>{var i;return z(t)||"function"==typeof(null===(i=t)||void 0===i?void 0:i[Symbol.iterator])})(t)?this.A(t):this.$(t)}M(t,i=this._$AB){return this._$AA.parentNode.insertBefore(t,i)}S(t){this._$AH!==t&&(this._$AR(),this._$AH=this.M(t))}$(t){this._$AH!==U&&O(this._$AH)?this._$AA.nextSibling.data=t:this.S(S.createTextNode(t)),this._$AH=t}T(t){var i;const{values:e,_$litType$:n}=t,r="number"==typeof n?this._$AC(t):(void 0===n.el&&(n.el=D.createElement(n.h,this.options)),n);if((null===(i=this._$AH)||void 0===i?void 0:i._$AD)===r)this._$AH.m(e);else{const t=new I(r,this),i=t.p(this.options);t.m(e),this.S(i),this._$AH=t}}_$AC(t){let i=L.get(t.strings);return void 0===i&&L.set(t.strings,i=new D(t)),i}A(t){z(this._$AH)||(this._$AH=[],this._$AR());const i=this._$AH;let e,n=0;for(const r of t)n===i.length?i.push(e=new P(this.M($()),this.M($()),this,this.options)):e=i[n],e._$AI(r),n++;n<i.length&&(this._$AR(e&&e._$AB.nextSibling,n),i.length=n)}_$AR(t=this._$AA.nextSibling,i){var e;for(null===(e=this._$AP)||void 0===e||e.call(this,!1,!0,i);t&&t!==this._$AB;){const i=t.nextSibling;t.remove(),t=i}}setConnected(t){var i;void 0===this._$AM&&(this._$Cg=t,null===(i=this._$AP)||void 0===i||i.call(this,t))}}class W{constructor(t,i,e,n,r){this.type=1,this._$AH=U,this._$AN=void 0,this.element=t,this.name=i,this._$AM=n,this.options=r,e.length>2||""!==e[0]||""!==e[1]?(this._$AH=Array(e.length-1).fill(new String),this.strings=e):this._$AH=U}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,i=this,e,n){const r=this.strings;let o=!1;if(void 0===r)t=F(this,t,i,0),o=!O(t)||t!==this._$AH&&t!==_,o&&(this._$AH=t);else{const n=t;let s,a;for(t=r[0],s=0;s<r.length-1;s++)a=F(this,n[e+s],i,s),a===_&&(a=this._$AH[s]),o||(o=!O(a)||a!==this._$AH[s]),a===U?t=U:t!==U&&(t+=(null!=a?a:"")+r[s+1]),this._$AH[s]=a}o&&!n&&this.k(t)}k(t){t===U?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class B extends W{constructor(){super(...arguments),this.type=3}k(t){this.element[this.name]=t===U?void 0:t}}const V=g?g.emptyScript:"";class J extends W{constructor(){super(...arguments),this.type=4}k(t){t&&t!==U?this.element.setAttribute(this.name,V):this.element.removeAttribute(this.name)}}class K extends W{constructor(t,i,e,n,r){super(t,i,e,n,r),this.type=5}_$AI(t,i=this){var e;if((t=null!==(e=F(this,t,i,0))&&void 0!==e?e:U)===_)return;const n=this._$AH,r=t===U&&n!==U||t.capture!==n.capture||t.once!==n.once||t.passive!==n.passive,o=t!==U&&(n===U||r);r&&this.element.removeEventListener(this.name,this,n),o&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var i,e;"function"==typeof this._$AH?this._$AH.call(null!==(e=null===(i=this.options)||void 0===i?void 0:i.host)&&void 0!==e?e:this.element,t):this._$AH.handleEvent(t)}}class Z{constructor(t,i,e){this.element=t,this.type=6,this._$AN=void 0,this._$AM=i,this.options=e}get _$AU(){return this._$AM._$AU}_$AI(t){F(this,t)}}const q=window.litHtmlPolyfillSupport;
19
+ /**
20
+ * @license
21
+ * Copyright 2017 Google LLC
22
+ * SPDX-License-Identifier: BSD-3-Clause
23
+ */
24
+ var G,Q;null==q||q(D,P),(null!==(d=globalThis.litHtmlVersions)&&void 0!==d?d:globalThis.litHtmlVersions=[]).push("2.1.3");class X extends v{constructor(){super(...arguments),this.renderOptions={host:this},this._$Dt=void 0}createRenderRoot(){var t,i;const e=super.createRenderRoot();return null!==(t=(i=this.renderOptions).renderBefore)&&void 0!==t||(i.renderBefore=e.firstChild),e}update(t){const i=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Dt=((t,i,e)=>{var n,r;const o=null!==(n=null==e?void 0:e.renderBefore)&&void 0!==n?n:i;let s=o._$litPart$;if(void 0===s){const t=null!==(r=null==e?void 0:e.renderBefore)&&void 0!==r?r:null;o._$litPart$=s=new P(i.insertBefore($(),t),t,void 0,null!=e?e:{})}return s._$AI(t),s})(i,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!1)}render(){return _}}X.finalized=!0,X._$litElement$=!0,null===(G=globalThis.litElementHydrateSupport)||void 0===G||G.call(globalThis,{LitElement:X});const Y=globalThis.litElementPolyfillSupport;null==Y||Y({LitElement:X}),(null!==(Q=globalThis.litElementVersions)&&void 0!==Q?Q:globalThis.litElementVersions=[]).push("3.1.2");
25
+ /**
26
+ * @license
27
+ * Copyright 2017 Google LLC
28
+ * SPDX-License-Identifier: BSD-3-Clause
29
+ */
30
+ const tt=(t,i)=>"method"===i.kind&&i.descriptor&&!("value"in i.descriptor)?{...i,finisher(e){e.createProperty(i.key,t)}}:{kind:"field",key:Symbol(),placement:"own",descriptor:{},originalKey:i.key,initializer(){"function"==typeof i.initializer&&(this[i.key]=i.initializer.call(this))},finisher(e){e.createProperty(i.key,t)}};function it(t){return(i,e)=>void 0!==e?((t,i,e)=>{i.constructor.createProperty(e,t)})(t,i,e):tt(t,i)
31
+ /**
32
+ * @license
33
+ * Copyright 2021 Google LLC
34
+ * SPDX-License-Identifier: BSD-3-Clause
35
+ */}var et;null===(et=window.HTMLSlotElement)||void 0===et||et.prototype.assignedElements;
36
+ /**
37
+ * @license
38
+ * Copyright 2017 Google LLC
39
+ * SPDX-License-Identifier: BSD-3-Clause
40
+ */
41
+ const nt=1,rt=2;class ot{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,i,e){this._$Ct=t,this._$AM=i,this._$Ci=e}_$AS(t,i){return this.update(t,i)}update(t,i){return this.render(...i)}}
42
+ /**
43
+ * @license
44
+ * Copyright 2018 Google LLC
45
+ * SPDX-License-Identifier: BSD-3-Clause
46
+ */const st=(t=>(...i)=>({_$litDirective$:t,values:i}))(class extends ot{constructor(t){var i;if(super(t),t.type!==nt||"class"!==t.name||(null===(i=t.strings)||void 0===i?void 0:i.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((i=>t[i])).join(" ")+" "}update(t,[i]){var e,n;if(void 0===this.st){this.st=new Set,void 0!==t.strings&&(this.et=new Set(t.strings.join(" ").split(/\s/).filter((t=>""!==t))));for(const t in i)i[t]&&!(null===(e=this.et)||void 0===e?void 0:e.has(t))&&this.st.add(t);return this.render(i)}const r=t.element.classList;this.st.forEach((t=>{t in i||(r.remove(t),this.st.delete(t))}));for(const t in i){const e=!!i[t];e===this.st.has(t)||(null===(n=this.et)||void 0===n?void 0:n.has(t))||(e?(r.add(t),this.st.add(t)):(r.remove(t),this.st.delete(t)))}return _}});(function(){function t(t){var i=0;return function(){return i<t.length?{done:!1,value:t[i++]}:{done:!0}}}function i(i){var e="undefined"!=typeof Symbol&&Symbol.iterator&&i[Symbol.iterator];return e?e.call(i):{next:t(i)}}function e(t){if(!(t instanceof Array)){t=i(t);for(var e,n=[];!(e=t.next()).done;)n.push(e.value);t=n}return t}var n="function"==typeof Object.create?Object.create:function(t){function i(){}return i.prototype=t,new i};var r,o=function(t){t=["object"==typeof globalThis&&globalThis,t,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var i=0;i<t.length;++i){var e=t[i];if(e&&e.Math==Math)return e}throw Error("Cannot find global object")}(this),s=function(){if("undefined"!=typeof Reflect&&Reflect.construct){if(function(){function t(){}return Reflect.construct(t,[],(function(){})),new t instanceof t}())return Reflect.construct;var t=Reflect.construct;return function(i,e,n){return i=t(i,e),n&&Reflect.setPrototypeOf(i,n.prototype),i}}return function(t,i,e){return void 0===e&&(e=t),e=n(e.prototype||Object.prototype),Function.prototype.apply.call(t,e,i)||e}}();if("function"==typeof Object.setPrototypeOf)r=Object.setPrototypeOf;else{var a;t:{var l={};try{l.__proto__={a:!0},a=l.a;break t}catch(t){}a=!1}r=a?function(t,i){if(t.__proto__=i,t.__proto__!==i)throw new TypeError(t+" is not extensible");return t}:null}var h=r;if(!ShadowRoot.prototype.createElement){var f,p=window.HTMLElement,u=window.customElements.define,c=window.customElements.get,y=window.customElements,v=new WeakMap,d=new WeakMap,g=new WeakMap,b=new WeakMap;window.CustomElementRegistry=function(){this.l=new Map,this.o=new Map,this.i=new Map,this.h=new Map},window.CustomElementRegistry.prototype.define=function(t,e){if(t=t.toLowerCase(),void 0!==this.j(t))throw new DOMException("Failed to execute 'define' on 'CustomElementRegistry': the name \""+t+'" has already been used with this registry');if(void 0!==this.o.get(e))throw new DOMException("Failed to execute 'define' on 'CustomElementRegistry': this constructor has already been used with this registry");var n=e.prototype.attributeChangedCallback,r=new Set(e.observedAttributes||[]);if(w(e,r,n),n={g:e,connectedCallback:e.prototype.connectedCallback,disconnectedCallback:e.prototype.disconnectedCallback,adoptedCallback:e.prototype.adoptedCallback,attributeChangedCallback:n,formAssociated:e.formAssociated,formAssociatedCallback:e.prototype.formAssociatedCallback,formDisabledCallback:e.prototype.formDisabledCallback,formResetCallback:e.prototype.formResetCallback,formStateRestoreCallback:e.prototype.formStateRestoreCallback,observedAttributes:r},this.l.set(t,n),this.o.set(e,n),(r=c.call(y,t))||(r=m(t),u.call(y,t,r)),this===window.customElements&&(g.set(e,n),n.s=r),r=this.h.get(t)){this.h.delete(t);for(var o=(r=i(r)).next();!o.done;o=r.next())o=o.value,d.delete(o),S(o,n,!0)}return void 0!==(n=this.i.get(t))&&(n.resolve(e),this.i.delete(t)),e},window.CustomElementRegistry.prototype.upgrade=function(){O.push(this),y.upgrade.apply(y,arguments),O.pop()},window.CustomElementRegistry.prototype.get=function(t){var i;return null==(i=this.l.get(t))?void 0:i.g},window.CustomElementRegistry.prototype.j=function(t){return this.l.get(t)},window.CustomElementRegistry.prototype.whenDefined=function(t){var i=this.j(t);if(void 0!==i)return Promise.resolve(i.g);var e=this.i.get(t);return void 0===e&&((e={}).promise=new Promise((function(t){return e.resolve=t})),this.i.set(t,e)),e.promise},window.CustomElementRegistry.prototype.m=function(t,i,e){var n=this.h.get(i);n||this.h.set(i,n=new Set),e?n.add(t):n.delete(t)},window.HTMLElement=function(){var t=f;if(t)return f=void 0,t;var i=g.get(this.constructor);if(!i)throw new TypeError("Illegal constructor (custom element class must be registered with global customElements registry to be newable)");return t=Reflect.construct(p,[],i.s),Object.setPrototypeOf(t,this.constructor.prototype),v.set(t,i),t},window.HTMLElement.prototype=p.prototype;var m=function(t){function i(){var i=Reflect.construct(p,[],this.constructor);Object.setPrototypeOf(i,HTMLElement.prototype);t:{var e=i.getRootNode();if(!(e===document||e instanceof ShadowRoot)){if((e=O[O.length-1])instanceof CustomElementRegistry){var n=e;break t}(e=e.getRootNode())===document||e instanceof ShadowRoot||(e=(null==(n=b.get(e))?void 0:n.getRootNode())||document)}n=e.customElements}return(e=(n=n||window.customElements).j(t))?S(i,e):d.set(i,n),i}return o.Object.defineProperty(i,"formAssociated",{configurable:!0,enumerable:!0,get:function(){return!0}}),i.prototype.connectedCallback=function(){var i=v.get(this);i?i.connectedCallback&&i.connectedCallback.apply(this,arguments):d.get(this).m(this,t,!0)},i.prototype.disconnectedCallback=function(){var i=v.get(this);i?i.disconnectedCallback&&i.disconnectedCallback.apply(this,arguments):d.get(this).m(this,t,!1)},i.prototype.adoptedCallback=function(){var t,i;null==(t=v.get(this))||null==(i=t.adoptedCallback)||i.apply(this,arguments)},i.prototype.formAssociatedCallback=function(){var t,i=v.get(this);i&&i.formAssociated&&(null==i||null==(t=i.formAssociatedCallback)||t.apply(this,arguments))},i.prototype.formDisabledCallback=function(){var t,i=v.get(this);null!=i&&i.formAssociated&&(null==i||null==(t=i.formDisabledCallback)||t.apply(this,arguments))},i.prototype.formResetCallback=function(){var t,i=v.get(this);null!=i&&i.formAssociated&&(null==i||null==(t=i.formResetCallback)||t.apply(this,arguments))},i.prototype.formStateRestoreCallback=function(){var t,i=v.get(this);null!=i&&i.formAssociated&&(null==i||null==(t=i.formStateRestoreCallback)||t.apply(this,arguments))},i},w=function(t,i,e){if(0!==i.size&&void 0!==e){var n=t.prototype.setAttribute;n&&(t.prototype.setAttribute=function(t,r){if(t=t.toLowerCase(),i.has(t)){var o=this.getAttribute(t);n.call(this,t,r),e.call(this,t,o,r)}else n.call(this,t,r)});var r=t.prototype.removeAttribute;r&&(t.prototype.removeAttribute=function(t){if(t=t.toLowerCase(),i.has(t)){var n=this.getAttribute(t);r.call(this,t),e.call(this,t,n,null)}else r.call(this,t)})}},x=function(t){var i=Object.getPrototypeOf(t);if(i!==window.HTMLElement)return i===p?Object.setPrototypeOf(t,window.HTMLElement):x(i)},S=function(t,i,e){e=void 0!==e&&e,Object.setPrototypeOf(t,i.g.prototype),v.set(t,i),f=t;try{new i.g}catch(t){x(i.g),new i.g}i.observedAttributes.forEach((function(e){t.hasAttribute(e)&&i.attributeChangedCallback.call(t,e,null,t.getAttribute(e))})),e&&i.connectedCallback&&t.isConnected&&i.connectedCallback.call(t)},$=Element.prototype.attachShadow;Element.prototype.attachShadow=function(t){var i=$.apply(this,arguments);return t.customElements&&(i.customElements=t.customElements),i};var O=[document],z=function(t,i,e){var n=(e?Object.getPrototypeOf(e):t.prototype)[i];t.prototype[i]=function(){O.push(this);var t=n.apply(e||this,arguments);return void 0!==t&&b.set(t,this),O.pop(),t}};z(ShadowRoot,"createElement",document),z(ShadowRoot,"importNode",document),z(Element,"insertAdjacentHTML");var E=function(t){var i=Object.getOwnPropertyDescriptor(t.prototype,"innerHTML");Object.defineProperty(t.prototype,"innerHTML",Object.assign({},i,{set:function(t){O.push(this),i.set.call(this,t),O.pop()}}))};if(E(Element),E(ShadowRoot),Object.defineProperty(window,"customElements",{value:new CustomElementRegistry,configurable:!0,writable:!0}),window.ElementInternals&&window.ElementInternals.prototype.setFormValue){var j=new WeakMap,C=HTMLElement.prototype.attachInternals;HTMLElement.prototype.attachInternals=function(t){for(var i=[],n=0;n<arguments.length;++n)i[n]=arguments[n];return i=C.call.apply(C,[this].concat(e(i))),j.set(i,this),i},["setFormValue","setValidity","checkValidity","reportValidity"].forEach((function(t){var i=window.ElementInternals.prototype,n=i[t];i[t]=function(t){for(var i=[],r=0;r<arguments.length;++r)i[r]=arguments[r];if(r=j.get(this),!0!==v.get(r).formAssociated)throw new DOMException("Failed to execute "+n+" on 'ElementInternals': The target element is not a form-associated custom element.");null==n||n.call.apply(n,[this].concat(e(i)))}}));var M=function(t){var i=s(Array,[].concat(e(t)),this.constructor);return i.h=t,i},A=M,k=Array;if(A.prototype=n(k.prototype),A.prototype.constructor=A,h)h(A,k);else for(var T in k)if("prototype"!=T)if(Object.defineProperties){var R=Object.getOwnPropertyDescriptor(k,T);R&&Object.defineProperty(A,T,R)}else A[T]=k[T];A.u=k.prototype,o.Object.defineProperty(M.prototype,"value",{configurable:!0,enumerable:!0,get:function(){var t;return(null==(t=this.h.find((function(t){return!0===t.checked})))?void 0:t.value)||""}});var _=function(t){var i=this,e=new Map;t.forEach((function(t,n){var r=t.getAttribute("name"),o=e.get(r)||[];i[+n]=t,o.push(t),e.set(r,o)})),this.length=t.length,e.forEach((function(t,e){t&&(i[e]=1===t.length?t[0]:new M(t))}))};_.prototype.namedItem=function(t){return this[t]};var U=Object.getOwnPropertyDescriptor(HTMLFormElement.prototype,"elements");Object.defineProperty(HTMLFormElement.prototype,"elements",{get:function(){for(var t=U.get.call(this,[]),e=[],n=(t=i(t)).next();!n.done;n=t.next()){n=n.value;var r=v.get(n);r&&!0!==r.formAssociated||e.push(n)}return new _(e)}})}}}).call(self);try{window.customElements.define("custom-element",null)}catch(ht){const t=window.customElements.define;window.customElements.define=(i,e,n)=>{try{t.bind(window.customElements)(i,e,n)}catch(t){console.warn(i,e,n,t)}}}const at=t=>i=>{window.customElements.get(t)||window.customElements.define(t,i)}
47
+ /**
48
+ * @license
49
+ * Copyright 2021 Google LLC
50
+ * SPDX-License-Identifier: BSD-3-Clause
51
+ */;class lt extends(function(t){return class extends t{createRenderRoot(){const t=this.constructor,{registry:i,elementDefinitions:e,shadowRootOptions:n}=t;e&&!i&&(t.registry=new CustomElementRegistry,Object.entries(e).forEach((([i,e])=>t.registry.define(i,e))));const r=this.renderOptions.creationScope=this.attachShadow({...n,customElements:t.registry});return s(r,this.constructor.elementStyles),r}}}(X)){constructor(){super(),this.constructorName=this.constructor.name,this.proto=this.constructor.prototype}getStyles(){return[]}getTemplate(){return null}render(){let t=this.getStyles();return Array.isArray(t)||(t=[t]),R`${t.map((t=>R`<style>${t}</style>`))} ${this.getTemplate()}`}adoptedCallback(){Object.getPrototypeOf(this)!==this.constructorName&&Object.setPrototypeOf(this,this.proto)}updated(t){super.updated(t),setTimeout((()=>this.contentAvailableCallback(t)),0)}contentAvailableCallback(t){}}
52
+ /**
53
+ * @license
54
+ * Copyright 2017 Google LLC
55
+ * SPDX-License-Identifier: BSD-3-Clause
56
+ */class ht extends ot{constructor(t){if(super(t),this.it=U,t.type!==rt)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===U||null==t)return this.vt=void 0,this.it=t;if(t===_)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.it)return this.vt;this.it=t;const i=[t];return i.raw=i,this.vt={_$litType$:this.constructor.resultType,strings:i,values:[]}}}var ft,pt;ht.directiveName="unsafeHTML",ht.resultType=1,navigator.vendor&&navigator.vendor.match(/apple/i)||(null===(pt=null===(ft=window.safari)||void 0===ft?void 0:ft.pushNotification)||void 0===pt||pt.toString());
57
+ /**
58
+ * @license
59
+ * Copyright 2020 Google LLC
60
+ * SPDX-License-Identifier: BSD-3-Clause
61
+ */
62
+ const ut=t=>({_$litStatic$:t}),ct=new Map,yt=(t=>(i,...e)=>{var n;const r=e.length;let o,s;const a=[],l=[];let h,f=0,p=!1;for(;f<r;){for(h=i[f];f<r&&void 0!==(s=e[f],o=null===(n=s)||void 0===n?void 0:n._$litStatic$);)h+=o+i[++f],p=!0;l.push(s),a.push(h),f++}if(f===r&&a.push(i[r]),p){const t=a.join("$$lit$$");void 0===(i=ct.get(t))&&(a.raw=a,ct.set(t,i=a)),e=l}return t(i,...e)})(R);var vt,dt=function(t,i,e,n){for(var r,o=arguments.length,s=o<3?i:null===n?n=Object.getOwnPropertyDescriptor(i,e):n,a=t.length-1;a>=0;a--)(r=t[a])&&(s=(o<3?r(s):o>3?r(i,e,s):r(i,e))||s);return o>3&&s&&Object.defineProperty(i,e,s),s};!function(t){t.title="title",t.title_dense="title-dense",t.subtitle1="subtitle1",t.subtitle2="subtitle2",t.body1="body1",t.body2="body2",t.caption="caption",t.breadcrumb="breadcrumb",t.overline="overline",t.button="button"}(vt||(vt={}));const gt=o`
63
+ .ft-typography--title {
64
+ font-family: var(--ft-typography-title-font-family, var(--ft-typography-font-family, var(--ft-title-font, Ubuntu))), system-ui, sans-serif;
65
+ font-size: var(--ft-typography-title-font-size, var(--ft-typography-font-size, 20px));
66
+ font-weight: var(--ft-typography-title-font-weight, var(--ft-typography-font-weight, normal));
67
+ letter-spacing: var(--ft-typography-title-letter-spacing, var(--ft-typography-letter-spacing, 0.15px));
68
+ line-height: var(--ft-typography-title-line-height, var(--ft-typography-line-height, 24px));
69
+ text-transform: var(--ft-typography-title-text-transform, var(--ft-typography-text-transform, inherit));
70
+ }
71
+ `,bt=o`
72
+ .ft-typography--title-dense {
73
+ font-family: var(--ft-typography-title-dense-font-family, var(--ft-typography-font-family, var(--ft-title-font, Ubuntu))), system-ui, sans-serif;
74
+ font-size: var(--ft-typography-title-dense-font-size, var(--ft-typography-font-size, 14px));
75
+ font-weight: var(--ft-typography-title-dense-font-weight, var(--ft-typography-font-weight, normal));
76
+ letter-spacing: var(--ft-typography-title-dense-letter-spacing, var(--ft-typography-letter-spacing, 0.105px));
77
+ line-height: var(--ft-typography-title-dense-line-height, var(--ft-typography-line-height, 24px));
78
+ text-transform: var(--ft-typography-title-dense-text-transform, var(--ft-typography-text-transform, inherit));
79
+ }
80
+ `,mt=o`
81
+ .ft-typography--subtitle1 {
82
+ font-family: var(--ft-typography-subtitle1-font-family, var(--ft-typography-font-family, var(--ft-content-font, 'Open Sans'))), system-ui, sans-serif;
83
+ font-size: var(--ft-typography-subtitle1-font-size, var(--ft-typography-font-size, 16px));
84
+ font-weight: var(--ft-typography-subtitle1-font-weight, var(--ft-typography-font-weight, 600));
85
+ letter-spacing: var(--ft-typography-subtitle1-letter-spacing, var(--ft-typography-letter-spacing, 0.144px));
86
+ line-height: var(--ft-typography-subtitle1-line-height, var(--ft-typography-line-height, 24px));
87
+ text-transform: var(--ft-typography-subtitle1-text-transform, var(--ft-typography-text-transform, inherit));
88
+ }
89
+ `,wt=o`
90
+ .ft-typography--subtitle2 {
91
+ font-family: var(--ft-typography-subtitle2-font-family, var(--ft-typography-font-family, var(--ft-content-font, 'Open Sans'))), system-ui, sans-serif;
92
+ font-size: var(--ft-typography-subtitle2-font-size, var(--ft-typography-font-size, 14px));
93
+ font-weight: var(--ft-typography-subtitle2-font-weight, var(--ft-typography-font-weight, normal));
94
+ letter-spacing: var(--ft-typography-subtitle2-letter-spacing, var(--ft-typography-letter-spacing, 0.098px));
95
+ line-height: var(--ft-typography-subtitle2-line-height, var(--ft-typography-line-height, 24px));
96
+ text-transform: var(--ft-typography-subtitle2-text-transform, var(--ft-typography-text-transform, inherit));
97
+ }
98
+
99
+ `,xt=o`
100
+ .ft-typography--body1 {
101
+ font-family: var(--ft-typography-body1-font-family, var(--ft-typography-font-family, var(--ft-content-font, 'Open Sans'))), system-ui, sans-serif;
102
+ font-size: var(--ft-typography-body1-font-size, var(--ft-typography-font-size, 16px));
103
+ font-weight: var(--ft-typography-body1-font-weight, var(--ft-typography-font-weight, normal));
104
+ letter-spacing: var(--ft-typography-body1-letter-spacing, var(--ft-typography-letter-spacing, 0.496px));
105
+ line-height: var(--ft-typography-body1-line-height, var(--ft-typography-line-height, 24px));
106
+ text-transform: var(--ft-typography-body1-text-transform, var(--ft-typography-text-transform, inherit));
107
+ }
108
+ `,St=o`
109
+ .ft-typography--body2 {
110
+ font-family: var(--ft-typography-body2-font-family, var(--ft-typography-font-family, var(--ft-content-font, 'Open Sans'))), system-ui, sans-serif;
111
+ font-size: var(--ft-typography-body2-font-size, var(--ft-typography-font-size, 14px));
112
+ font-weight: var(--ft-typography-body2-font-weight, var(--ft-typography-font-weight, normal));
113
+ letter-spacing: var(--ft-typography-body2-letter-spacing, var(--ft-typography-letter-spacing, 0.252px));
114
+ line-height: var(--ft-typography-body2-line-height, var(--ft-typography-line-height, 20px));
115
+ text-transform: var(--ft-typography-body2-text-transform, var(--ft-typography-text-transform, inherit));
116
+ }
117
+ `,$t=o`
118
+ .ft-typography--caption {
119
+ font-family: var(--ft-typography-caption-font-family, var(--ft-typography-font-family, var(--ft-content-font, 'Open Sans'))), system-ui, sans-serif;
120
+ font-size: var(--ft-typography-caption-font-size, var(--ft-typography-font-size, 12px));
121
+ font-weight: var(--ft-typography-caption-font-weight, var(--ft-typography-font-weight, normal));
122
+ letter-spacing: var(--ft-typography-caption-letter-spacing, var(--ft-typography-letter-spacing, 0.396px));
123
+ line-height: var(--ft-typography-caption-line-height, var(--ft-typography-line-height, 16px));
124
+ text-transform: var(--ft-typography-caption-text-transform, var(--ft-typography-text-transform, inherit));
125
+ }
126
+ `,Ot=o`
127
+ .ft-typography--breadcrumb {
128
+ font-family: var(--ft-typography-breadcrumb-font-family, var(--ft-typography-font-family, var(--ft-content-font, 'Open Sans'))), system-ui, sans-serif;
129
+ font-size: var(--ft-typography-breadcrumb-font-size, var(--ft-typography-font-size, 10px));
130
+ font-weight: var(--ft-typography-breadcrumb-font-weight, var(--ft-typography-font-weight, normal));
131
+ letter-spacing: var(--ft-typography-breadcrumb-letter-spacing, var(--ft-typography-letter-spacing, 0.33px));
132
+ line-height: var(--ft-typography-breadcrumb-line-height, var(--ft-typography-line-height, 16px));
133
+ text-transform: var(--ft-typography-breadcrumb-text-transform, var(--ft-typography-text-transform, inherit));
134
+ }
135
+ `,zt=o`
136
+ .ft-typography--overline {
137
+ font-family: var(--ft-typography-overline-font-family, var(--ft-typography-font-family, var(--ft-content-font, 'Open Sans'))), system-ui, sans-serif;
138
+ font-size: var(--ft-typography-overline-font-size, var(--ft-typography-font-size, 10px));
139
+ font-weight: var(--ft-typography-overline-font-weight, var(--ft-typography-font-weight, normal));
140
+ letter-spacing: var(--ft-typography-overline-letter-spacing, var(--ft-typography-letter-spacing, 1.5px));
141
+ line-height: var(--ft-typography-overline-line-height, var(--ft-typography-line-height, 16px));
142
+ text-transform: var(--ft-typography-overline-text-transform, var(--ft-typography-text-transform, uppercase));
143
+ }
144
+ `,Et=o`
145
+ .ft-typography--button {
146
+ font-family: var(--ft-typography-button-font-family, var(--ft-typography-font-family, var(--ft-content-font, 'Open Sans'))), system-ui, sans-serif;
147
+ font-size: var(--ft-typography-button-font-size, var(--ft-typography-font-size, 14px));
148
+ font-weight: var(--ft-typography-button-font-weight, var(--ft-typography-font-weight, 600));
149
+ letter-spacing: var(--ft-typography-button-letter-spacing, var(--ft-typography-letter-spacing, 1.246px));
150
+ line-height: var(--ft-typography-button-line-height, var(--ft-typography-line-height, 16px));
151
+ text-transform: var(--ft-typography-button-text-transform, var(--ft-typography-text-transform, uppercase));
152
+ }
153
+ `;let jt=class extends lt{constructor(){super(...arguments),this.variant=vt.body1}getStyles(){return[gt,bt,mt,wt,xt,St,$t,Ot,zt,Et]}getTemplate(){return this.element?yt`
154
+ <${ut(this.element)}
155
+ class="ft-typography ft-typography--${this.variant}">
156
+ <slot></slot>
157
+ </${ut(this.element)}>
158
+ `:yt`
159
+ <slot class="ft-typography ft-typography--${this.variant}"></slot>
160
+ `}};dt([it()],jt.prototype,"element",void 0),dt([it()],jt.prototype,"variant",void 0),jt=dt([at("ft-typography")],jt);var Ct=function(t,i,e,n){for(var r,o=arguments.length,s=o<3?i:null===n?n=Object.getOwnPropertyDescriptor(i,e):n,a=t.length-1;a>=0;a--)(r=t[a])&&(s=(o<3?r(s):o>3?r(i,e,s):r(i,e))||s);return o>3&&s&&Object.defineProperty(i,e,s),s};t.FtInputLabel=class extends lt{constructor(){super(...arguments),this.text="",this.raised=!1,this.outlined=!1,this.disabled=!1}getStyles(){return[$t,o`.ft-input-label{position:absolute;inset:0;display:flex}.ft-input-label{border-color:var(--ft-input-label-border-color,var(--ft-color-outline,rgba(0,0,0,.14)))}.ft-input-label:after,.ft-input-label:before{content:"";display:flex;border-bottom-width:1px;border-bottom-style:solid;border-color:inherit}.ft-input-label:before{width:var(--ft-input-label-horizontal-spacing,12px);flex-shrink:0}.ft-input-label:after{flex-grow:1;flex-shrink:1}.ft-input-label--text{display:flex;flex-shrink:1;position:relative;border-bottom-width:1px;border-bottom-style:solid;border-color:inherit;padding:0 4px;color:var(--ft-input-label-text-color,var(--ft-color-on-surface-medium,rgba(0,0,0,.6)));transition:font-size 250ms,line-height 250ms,color 250ms;--ft-typography-font-size:var(--ft-input-label-font-size, 14px);--ft-typography-line-height:var(--ft-input-label-font-size, 14px)}.ft-input-label--disabled .ft-input-label--text{color:var(--ft-input-label-text-color,var(--ft-color-on-surface-disabled,rgba(0,0,0,.38)))}.ft-input-label--hidden-text{opacity:0}.ft-input-label--floating-text{position:absolute;top:calc(50% - var(--ft-typography-line-height)/ 2);transition:top 250ms;width:calc(100% - 8px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:var(--ft-input-label-vertical-spacing,4px) 0;margin:calc(var(--ft-input-label-vertical-spacing,4px) * -1) 0}.ft-input-label--raised .ft-input-label--text{--ft-typography-font-size:var(--ft-input-label-raised-font-size, 11px);--ft-typography-line-height:var(--ft-input-label-raised-font-size, 11px)}.ft-input-label--raised .ft-input-label--floating-text{top:var(--ft-input-label-vertical-spacing,4px)}.ft-input-label--outlined .ft-input-label--text,.ft-input-label--outlined:after,.ft-input-label--outlined:before{border-top-width:1px;border-top-style:solid}.ft-input-label--outlined:before{border-left-width:1px;border-left-style:solid;border-radius:var(--ft-border-radius-S,4px) 0 0 var(--ft-border-radius-S,4px)}.ft-input-label--outlined:after{border-right-width:1px;border-right-style:solid;border-radius:0 var(--ft-border-radius-S,4px) var(--ft-border-radius-S,4px) 0}.ft-input-label--outlined.ft-input-label--raised .ft-input-label--floating-text{top:calc(var(--ft-typography-line-height)/ -2)}.ft-input-label--outlined.ft-input-label--raised .ft-input-label--text{border-top:none}`]}getTemplate(){const t={"ft-input-label":!0,"ft-input-label--raised":this.raised,"ft-input-label--outlined":this.outlined,"ft-input-label--disabled":this.disabled};return R`<div class="${st(t)}">${this.text?R`<div class="ft-input-label--text ft-typography--caption"><span class="ft-input-label--floating-text">${this.text}</span> <span class="ft-input-label--hidden-text" aria-hidden="true">${this.text}</span></div>`:null}</div>`}},t.FtInputLabel.elementDefinitions={},Ct([it({type:String})],t.FtInputLabel.prototype,"text",void 0),Ct([it({type:Boolean})],t.FtInputLabel.prototype,"raised",void 0),Ct([it({type:Boolean})],t.FtInputLabel.prototype,"outlined",void 0),Ct([it({type:Boolean})],t.FtInputLabel.prototype,"disabled",void 0),t.FtInputLabel=Ct([at("ft-input-label")],t.FtInputLabel),Object.defineProperty(t,"t",{value:!0})}({});
package/package.json ADDED
@@ -0,0 +1,27 @@
1
+ {
2
+ "name": "@fluid-topics/ft-input-label",
3
+ "version": "0.0.88",
4
+ "description": "Dynamic label with outline",
5
+ "keywords": [
6
+ "Lit"
7
+ ],
8
+ "author": "Fluid Topics <devtopics@antidot.net>",
9
+ "license": "ISC",
10
+ "main": "build/ft-input-label.js",
11
+ "web": "build/ft-input-label.min.js",
12
+ "typings": "build/ft-input-label",
13
+ "files": [
14
+ "build/*.ts",
15
+ "build/*.js"
16
+ ],
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "ssh://git@scm.mrs.antidot.net:2222/fluidtopics/ft-web-components.git"
20
+ },
21
+ "dependencies": {
22
+ "@fluid-topics/ft-typography": "^0.0.88",
23
+ "@fluid-topics/ft-wc-utils": "^0.0.88",
24
+ "lit": "^2.0.2"
25
+ },
26
+ "gitHead": "220e53dba55dfa1de1560abbc30067555f72198c"
27
+ }