@francofantomius/material-components 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/README.md +192 -0
- package/custom-elements.json +5448 -0
- package/dist/chunks/base-component-DQTjlEVL.js +34 -0
- package/dist/chunks/base-component-DQTjlEVL.js.map +1 -0
- package/dist/chunks/focus-ring-Dl-XoEKK.js +71 -0
- package/dist/chunks/focus-ring-Dl-XoEKK.js.map +1 -0
- package/dist/chunks/form-associated-fKbeX_2P.js +74 -0
- package/dist/chunks/form-associated-fKbeX_2P.js.map +1 -0
- package/dist/chunks/theme.css-DV3DRha-.js +263 -0
- package/dist/chunks/theme.css-DV3DRha-.js.map +1 -0
- package/dist/components/badge/badge.css.d.ts +2 -0
- package/dist/components/badge/badge.css.d.ts.map +1 -0
- package/dist/components/badge/badge.d.ts +16 -0
- package/dist/components/badge/badge.d.ts.map +1 -0
- package/dist/components/badge/badge.js +93 -0
- package/dist/components/badge/badge.js.map +1 -0
- package/dist/components/button/button.css.d.ts +2 -0
- package/dist/components/button/button.css.d.ts.map +1 -0
- package/dist/components/button/button.d.ts +25 -0
- package/dist/components/button/button.d.ts.map +1 -0
- package/dist/components/button/button.js +263 -0
- package/dist/components/button/button.js.map +1 -0
- package/dist/components/card/card.css.d.ts +2 -0
- package/dist/components/card/card.css.d.ts.map +1 -0
- package/dist/components/card/card.d.ts +18 -0
- package/dist/components/card/card.d.ts.map +1 -0
- package/dist/components/card/card.js +169 -0
- package/dist/components/card/card.js.map +1 -0
- package/dist/components/checkbox/checkbox.css.d.ts +2 -0
- package/dist/components/checkbox/checkbox.css.d.ts.map +1 -0
- package/dist/components/checkbox/checkbox.d.ts +24 -0
- package/dist/components/checkbox/checkbox.d.ts.map +1 -0
- package/dist/components/checkbox/checkbox.js +188 -0
- package/dist/components/checkbox/checkbox.js.map +1 -0
- package/dist/components/chip/chip.css.d.ts +3 -0
- package/dist/components/chip/chip.css.d.ts.map +1 -0
- package/dist/components/chip/chip.d.ts +27 -0
- package/dist/components/chip/chip.d.ts.map +1 -0
- package/dist/components/chip/chip.js +174 -0
- package/dist/components/chip/chip.js.map +1 -0
- package/dist/components/dialog/dialog.css.d.ts +2 -0
- package/dist/components/dialog/dialog.css.d.ts.map +1 -0
- package/dist/components/dialog/dialog.d.ts +22 -0
- package/dist/components/dialog/dialog.d.ts.map +1 -0
- package/dist/components/dialog/dialog.js +167 -0
- package/dist/components/dialog/dialog.js.map +1 -0
- package/dist/components/divider/divider.css.d.ts +2 -0
- package/dist/components/divider/divider.css.d.ts.map +1 -0
- package/dist/components/divider/divider.d.ts +16 -0
- package/dist/components/divider/divider.d.ts.map +1 -0
- package/dist/components/divider/divider.js +81 -0
- package/dist/components/divider/divider.js.map +1 -0
- package/dist/components/fab/fab.css.d.ts +2 -0
- package/dist/components/fab/fab.css.d.ts.map +1 -0
- package/dist/components/fab/fab.d.ts +19 -0
- package/dist/components/fab/fab.d.ts.map +1 -0
- package/dist/components/fab/fab.js +155 -0
- package/dist/components/fab/fab.js.map +1 -0
- package/dist/components/icon/icon.css.d.ts +2 -0
- package/dist/components/icon/icon.css.d.ts.map +1 -0
- package/dist/components/icon/icon.d.ts +15 -0
- package/dist/components/icon/icon.d.ts.map +1 -0
- package/dist/components/icon/icon.js +70 -0
- package/dist/components/icon/icon.js.map +1 -0
- package/dist/components/icon-button/icon-button.css.d.ts +2 -0
- package/dist/components/icon-button/icon-button.css.d.ts.map +1 -0
- package/dist/components/icon-button/icon-button.d.ts +22 -0
- package/dist/components/icon-button/icon-button.d.ts.map +1 -0
- package/dist/components/icon-button/icon-button.js +192 -0
- package/dist/components/icon-button/icon-button.js.map +1 -0
- package/dist/components/list/list.css.d.ts +3 -0
- package/dist/components/list/list.css.d.ts.map +1 -0
- package/dist/components/list/list.d.ts +25 -0
- package/dist/components/list/list.d.ts.map +1 -0
- package/dist/components/list/list.js +190 -0
- package/dist/components/list/list.js.map +1 -0
- package/dist/components/progress/progress.css.d.ts +2 -0
- package/dist/components/progress/progress.css.d.ts.map +1 -0
- package/dist/components/progress/progress.d.ts +19 -0
- package/dist/components/progress/progress.d.ts.map +1 -0
- package/dist/components/progress/progress.js +183 -0
- package/dist/components/progress/progress.js.map +1 -0
- package/dist/components/radio/radio.css.d.ts +3 -0
- package/dist/components/radio/radio.css.d.ts.map +1 -0
- package/dist/components/radio/radio.d.ts +38 -0
- package/dist/components/radio/radio.d.ts.map +1 -0
- package/dist/components/radio/radio.js +205 -0
- package/dist/components/radio/radio.js.map +1 -0
- package/dist/components/snackbar/snackbar.css.d.ts +2 -0
- package/dist/components/snackbar/snackbar.css.d.ts.map +1 -0
- package/dist/components/snackbar/snackbar.d.ts +24 -0
- package/dist/components/snackbar/snackbar.d.ts.map +1 -0
- package/dist/components/snackbar/snackbar.js +164 -0
- package/dist/components/snackbar/snackbar.js.map +1 -0
- package/dist/components/switch/switch.css.d.ts +2 -0
- package/dist/components/switch/switch.css.d.ts.map +1 -0
- package/dist/components/switch/switch.d.ts +22 -0
- package/dist/components/switch/switch.d.ts.map +1 -0
- package/dist/components/switch/switch.js +171 -0
- package/dist/components/switch/switch.js.map +1 -0
- package/dist/components/tabs/tabs.css.d.ts +3 -0
- package/dist/components/tabs/tabs.css.d.ts.map +1 -0
- package/dist/components/tabs/tabs.d.ts +33 -0
- package/dist/components/tabs/tabs.d.ts.map +1 -0
- package/dist/components/tabs/tabs.js +200 -0
- package/dist/components/tabs/tabs.js.map +1 -0
- package/dist/components/text-field/text-field.css.d.ts +2 -0
- package/dist/components/text-field/text-field.css.d.ts.map +1 -0
- package/dist/components/text-field/text-field.d.ts +40 -0
- package/dist/components/text-field/text-field.d.ts.map +1 -0
- package/dist/components/text-field/text-field.js +327 -0
- package/dist/components/text-field/text-field.js.map +1 -0
- package/dist/index.d.ts +23 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +59 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/base-component.d.ts +13 -0
- package/dist/internal/base-component.d.ts.map +1 -0
- package/dist/internal/focus-ring/focus-ring.css.d.ts +2 -0
- package/dist/internal/focus-ring/focus-ring.css.d.ts.map +1 -0
- package/dist/internal/focus-ring/focus-ring.d.ts +18 -0
- package/dist/internal/focus-ring/focus-ring.d.ts.map +1 -0
- package/dist/internal/form-associated.d.ts +26 -0
- package/dist/internal/form-associated.d.ts.map +1 -0
- package/dist/internal/ripple/ripple.css.d.ts +2 -0
- package/dist/internal/ripple/ripple.css.d.ts.map +1 -0
- package/dist/internal/ripple/ripple.d.ts +26 -0
- package/dist/internal/ripple/ripple.d.ts.map +1 -0
- package/dist/internal/ripple/ripple.js +144 -0
- package/dist/internal/ripple/ripple.js.map +1 -0
- package/dist/tokens/colors.d.ts +42 -0
- package/dist/tokens/colors.d.ts.map +1 -0
- package/dist/tokens/elevation.d.ts +9 -0
- package/dist/tokens/elevation.d.ts.map +1 -0
- package/dist/tokens/index.d.ts +7 -0
- package/dist/tokens/index.d.ts.map +1 -0
- package/dist/tokens/index.js +13 -0
- package/dist/tokens/index.js.map +1 -0
- package/dist/tokens/motion.d.ts +21 -0
- package/dist/tokens/motion.d.ts.map +1 -0
- package/dist/tokens/shape.d.ts +10 -0
- package/dist/tokens/shape.d.ts.map +1 -0
- package/dist/tokens/theme.css.d.ts +4 -0
- package/dist/tokens/theme.css.d.ts.map +1 -0
- package/dist/tokens/typography.d.ts +101 -0
- package/dist/tokens/typography.d.ts.map +1 -0
- package/package.json +133 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icon-button.js","sources":["../../../src/components/icon-button/icon-button.css.ts","../../../src/components/icon-button/icon-button.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport const iconButtonStyles = css`\n :host {\n display: inline-flex;\n outline: none;\n vertical-align: middle;\n -webkit-tap-highlight-color: transparent;\n }\n\n :host([disabled]) {\n pointer-events: none;\n }\n\n button, a {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n width: 40px;\n height: 40px;\n padding: 0;\n border: none;\n border-radius: var(--md-sys-shape-corner-full, 50%);\n background-color: transparent;\n color: var(--md-sys-color-on-surface-variant, #49454F);\n cursor: pointer;\n user-select: none;\n outline: none;\n text-decoration: none;\n transition: background-color 150ms cubic-bezier(0.2, 0, 0, 1),\n color 150ms cubic-bezier(0.2, 0, 0, 1);\n }\n\n /* --- Filled --- */\n :host([variant=\"filled\"]) button,\n :host([variant=\"filled\"]) a {\n background-color: var(--md-sys-color-primary, #6750A4);\n color: var(--md-sys-color-on-primary, #FFFFFF);\n }\n\n :host([variant=\"filled\"][selected]) button,\n :host([variant=\"filled\"][selected]) a {\n background-color: var(--md-sys-color-primary, #6750A4);\n color: var(--md-sys-color-on-primary, #FFFFFF);\n }\n\n /* --- Tonal --- */\n :host([variant=\"tonal\"]) button,\n :host([variant=\"tonal\"]) a {\n background-color: var(--md-sys-color-secondary-container, #E8DEF8);\n color: var(--md-sys-color-on-secondary-container, #1D192B);\n }\n\n /* --- Outlined --- */\n :host([variant=\"outlined\"]) button,\n :host([variant=\"outlined\"]) a {\n border: 1px solid var(--md-sys-color-outline, #79747E);\n color: var(--md-sys-color-on-surface-variant, #49454F);\n }\n\n :host([variant=\"outlined\"][selected]) button,\n :host([variant=\"outlined\"][selected]) a {\n background-color: var(--md-sys-color-inverse-surface, #313033);\n color: var(--md-sys-color-inverse-on-surface, #F4EFF4);\n border: none;\n }\n\n /* --- Toggle / Selected for Standard --- */\n :host(:not([variant])[selected]) button,\n :host(:not([variant])[selected]) a,\n :host([variant=\"standard\"][selected]) button,\n :host([variant=\"standard\"][selected]) a {\n color: var(--md-sys-color-primary, #6750A4);\n }\n\n /* --- Disabled --- */\n :host([disabled]) button,\n :host([disabled]) a {\n cursor: not-allowed;\n color: rgba(29, 27, 32, 0.38);\n }\n\n :host([disabled][variant=\"filled\"]) button,\n :host([disabled][variant=\"filled\"]) a,\n :host([disabled][variant=\"tonal\"]) button,\n :host([disabled][variant=\"tonal\"]) a {\n background-color: rgba(29, 27, 32, 0.12);\n }\n\n :host([disabled][variant=\"outlined\"]) button,\n :host([disabled][variant=\"outlined\"]) a {\n border-color: rgba(29, 27, 32, 0.12);\n }\n\n .content {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n position: relative;\n z-index: 1;\n }\n`;\n\n","import { html, nothing } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { MdBaseElement } from '../../internal/base-component.js';\nimport '../../internal/ripple/ripple.js';\nimport '../../internal/focus-ring/focus-ring.js';\nimport '../icon/icon.js';\nimport { iconButtonStyles } from './icon-button.css.js';\n\nexport type IconButtonVariant = 'standard' | 'filled' | 'tonal' | 'outlined';\n\n@customElement('md-icon-button')\nexport class MdIconButton extends MdBaseElement {\n static override styles = [MdBaseElement.styles, iconButtonStyles];\n\n @property({ type: String, reflect: true })\n variant: IconButtonVariant = 'standard';\n\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n @property({ type: Boolean, reflect: true })\n toggle = false;\n\n @property({ type: Boolean, reflect: true })\n selected = false;\n\n @property({ type: String })\n icon = '';\n\n @property({ type: String, attribute: 'selected-icon' })\n selectedIcon = '';\n\n @property({ type: String, attribute: 'aria-label' })\n ariaLabelText = '';\n\n @property({ type: String })\n href = '';\n\n @property({ type: String })\n target = '';\n\n private handleClick = (event: MouseEvent): void => {\n if (this.disabled) {\n event.preventDefault();\n event.stopImmediatePropagation();\n return;\n }\n\n if (this.toggle) {\n this.selected = !this.selected;\n this.emitEvent('change', { selected: this.selected });\n }\n };\n\n override render() {\n const iconName = (this.selected && this.selectedIcon) ? this.selectedIcon : this.icon;\n\n const content = html`\n <md-ripple ?disabled=${this.disabled} unbounded></md-ripple>\n <md-focus-ring></md-focus-ring>\n <span class=\"content\">\n <slot>\n ${iconName ? html`<md-icon name=${iconName} ?filled=${this.selected}></md-icon>` : nothing}\n </slot>\n </span>\n `;\n\n if (this.href) {\n return html`\n <a\n href=${this.disabled ? nothing : this.href}\n target=${this.target || nothing}\n aria-label=${this.ariaLabelText || nothing}\n aria-pressed=${this.toggle ? (this.selected ? 'true' : 'false') : nothing}\n aria-disabled=${this.disabled ? 'true' : nothing}\n tabindex=${this.disabled ? '-1' : '0'}\n @click=${this.handleClick}\n >\n ${content}\n </a>\n `;\n }\n\n return html`\n <button\n aria-label=${this.ariaLabelText || nothing}\n aria-pressed=${this.toggle ? (this.selected ? 'true' : 'false') : nothing}\n ?disabled=${this.disabled}\n @click=${this.handleClick}\n >\n ${content}\n </button>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-icon-button': MdIconButton;\n }\n}\n\n"],"names":["iconButtonStyles","css","MdIconButton","MdBaseElement","event","iconName","content","html","nothing","__decorateClass","property","customElement"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.css.d.ts","sourceRoot":"","sources":["../../../src/components/list/list.css.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU,yBAOtB,CAAC;AAEF,eAAO,MAAM,cAAc,yBA6E1B,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { MdBaseElement } from '../../internal/base-component.js';
|
|
2
|
+
export declare class MdListItem extends MdBaseElement {
|
|
3
|
+
static styles: import('lit').CSSResultGroup[];
|
|
4
|
+
headline: string;
|
|
5
|
+
supportingText: string;
|
|
6
|
+
trailingSupportingText: string;
|
|
7
|
+
interactive: boolean;
|
|
8
|
+
disabled: boolean;
|
|
9
|
+
href: string;
|
|
10
|
+
target: string;
|
|
11
|
+
private handleClick;
|
|
12
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
13
|
+
}
|
|
14
|
+
export declare class MdList extends MdBaseElement {
|
|
15
|
+
static styles: import('lit').CSSResultGroup[];
|
|
16
|
+
connectedCallback(): void;
|
|
17
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
18
|
+
}
|
|
19
|
+
declare global {
|
|
20
|
+
interface HTMLElementTagNameMap {
|
|
21
|
+
'md-list': MdList;
|
|
22
|
+
'md-list-item': MdListItem;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=list.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/components/list/list.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,iCAAiC,CAAC;AACzC,OAAO,yCAAyC,CAAC;AAGjD,qBACa,UAAW,SAAQ,aAAa;IAC3C,OAAgB,MAAM,iCAA0C;IAGhE,QAAQ,SAAM;IAGd,cAAc,SAAM;IAGpB,sBAAsB,SAAM;IAG5B,WAAW,UAAS;IAGpB,QAAQ,UAAS;IAGjB,IAAI,SAAM;IAGV,MAAM,SAAM;IAEZ,OAAO,CAAC,WAAW,CASjB;IAEO,MAAM;CA+ChB;AAED,qBACa,MAAO,SAAQ,aAAa;IACvC,OAAgB,MAAM,iCAAsC;IAEnD,iBAAiB;IAKjB,MAAM;CAGhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,UAAU,CAAC;KAC5B;CACF"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { css as m, nothing as s, html as r } from "lit";
|
|
2
|
+
import { property as o, customElement as g } from "lit/decorators.js";
|
|
3
|
+
import { M as p } from "../../chunks/base-component-DQTjlEVL.js";
|
|
4
|
+
import "../../internal/ripple/ripple.js";
|
|
5
|
+
import "../../chunks/focus-ring-Dl-XoEKK.js";
|
|
6
|
+
const y = m`
|
|
7
|
+
:host {
|
|
8
|
+
display: flex;
|
|
9
|
+
flex-direction: column;
|
|
10
|
+
padding: 8px 0;
|
|
11
|
+
box-sizing: border-box;
|
|
12
|
+
}
|
|
13
|
+
`, x = m`
|
|
14
|
+
:host {
|
|
15
|
+
display: flex;
|
|
16
|
+
outline: none;
|
|
17
|
+
box-sizing: border-box;
|
|
18
|
+
-webkit-tap-highlight-color: transparent;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
:host([disabled]) {
|
|
22
|
+
pointer-events: none;
|
|
23
|
+
opacity: 0.38;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.item {
|
|
27
|
+
position: relative;
|
|
28
|
+
display: flex;
|
|
29
|
+
align-items: center;
|
|
30
|
+
width: 100%;
|
|
31
|
+
min-height: 56px;
|
|
32
|
+
padding: 8px 16px;
|
|
33
|
+
box-sizing: border-box;
|
|
34
|
+
font-family: var(--md-sys-typescale-font-family, inherit);
|
|
35
|
+
color: var(--md-sys-color-on-surface, #1D1B20);
|
|
36
|
+
text-decoration: none;
|
|
37
|
+
gap: 16px;
|
|
38
|
+
user-select: none;
|
|
39
|
+
overflow: hidden;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
:host([interactive]) .item {
|
|
43
|
+
cursor: pointer;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.start {
|
|
47
|
+
display: inline-flex;
|
|
48
|
+
align-items: center;
|
|
49
|
+
justify-content: center;
|
|
50
|
+
color: var(--md-sys-color-on-surface-variant, #49454F);
|
|
51
|
+
flex-shrink: 0;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.content {
|
|
55
|
+
display: flex;
|
|
56
|
+
flex-direction: column;
|
|
57
|
+
flex: 1;
|
|
58
|
+
min-width: 0;
|
|
59
|
+
justify-content: center;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.headline {
|
|
63
|
+
font-size: var(--md-sys-typescale-body-large-size, 16px);
|
|
64
|
+
line-height: 24px;
|
|
65
|
+
font-weight: 400;
|
|
66
|
+
color: var(--md-sys-color-on-surface, #1D1B20);
|
|
67
|
+
overflow: hidden;
|
|
68
|
+
text-overflow: ellipsis;
|
|
69
|
+
white-space: nowrap;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.supporting-text {
|
|
73
|
+
font-size: var(--md-sys-typescale-body-medium-size, 14px);
|
|
74
|
+
line-height: 20px;
|
|
75
|
+
font-weight: 400;
|
|
76
|
+
color: var(--md-sys-color-on-surface-variant, #49454F);
|
|
77
|
+
overflow: hidden;
|
|
78
|
+
text-overflow: ellipsis;
|
|
79
|
+
white-space: nowrap;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.end {
|
|
83
|
+
display: inline-flex;
|
|
84
|
+
align-items: center;
|
|
85
|
+
justify-content: center;
|
|
86
|
+
color: var(--md-sys-color-on-surface-variant, #49454F);
|
|
87
|
+
font-size: var(--md-sys-typescale-label-small-size, 11px);
|
|
88
|
+
flex-shrink: 0;
|
|
89
|
+
}
|
|
90
|
+
`;
|
|
91
|
+
var u = Object.defineProperty, v = Object.getOwnPropertyDescriptor, e = (i, l, d, a) => {
|
|
92
|
+
for (var n = a > 1 ? void 0 : a ? v(l, d) : l, c = i.length - 1, h; c >= 0; c--)
|
|
93
|
+
(h = i[c]) && (n = (a ? h(l, d, n) : h(n)) || n);
|
|
94
|
+
return a && n && u(l, d, n), n;
|
|
95
|
+
};
|
|
96
|
+
let t = class extends p {
|
|
97
|
+
constructor() {
|
|
98
|
+
super(...arguments), this.headline = "", this.supportingText = "", this.trailingSupportingText = "", this.interactive = !1, this.disabled = !1, this.href = "", this.target = "", this.handleClick = (i) => {
|
|
99
|
+
if (this.disabled) {
|
|
100
|
+
i.preventDefault(), i.stopImmediatePropagation();
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
this.interactive && this.emitEvent("item-click");
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
render() {
|
|
107
|
+
const i = r`
|
|
108
|
+
${this.interactive ? r`<md-ripple ?disabled=${this.disabled}></md-ripple><md-focus-ring></md-focus-ring>` : s}
|
|
109
|
+
|
|
110
|
+
<div class="start">
|
|
111
|
+
<slot name="start"></slot>
|
|
112
|
+
</div>
|
|
113
|
+
|
|
114
|
+
<div class="content">
|
|
115
|
+
<slot>
|
|
116
|
+
${this.headline ? r`<span class="headline">${this.headline}</span>` : s}
|
|
117
|
+
${this.supportingText ? r`<span class="supporting-text">${this.supportingText}</span>` : s}
|
|
118
|
+
</slot>
|
|
119
|
+
</div>
|
|
120
|
+
|
|
121
|
+
<div class="end">
|
|
122
|
+
<slot name="end">
|
|
123
|
+
${this.trailingSupportingText ? r`<span>${this.trailingSupportingText}</span>` : s}
|
|
124
|
+
</slot>
|
|
125
|
+
</div>
|
|
126
|
+
`;
|
|
127
|
+
return this.href ? r`
|
|
128
|
+
<a
|
|
129
|
+
class="item"
|
|
130
|
+
href=${this.disabled ? s : this.href}
|
|
131
|
+
target=${this.target || s}
|
|
132
|
+
aria-disabled=${this.disabled ? "true" : s}
|
|
133
|
+
tabindex=${this.disabled ? "-1" : "0"}
|
|
134
|
+
@click=${this.handleClick}
|
|
135
|
+
>
|
|
136
|
+
${i}
|
|
137
|
+
</a>
|
|
138
|
+
` : r`
|
|
139
|
+
<div
|
|
140
|
+
class="item"
|
|
141
|
+
tabindex=${this.interactive && !this.disabled ? "0" : s}
|
|
142
|
+
@click=${this.handleClick}
|
|
143
|
+
>
|
|
144
|
+
${i}
|
|
145
|
+
</div>
|
|
146
|
+
`;
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
t.styles = [p.styles, x];
|
|
150
|
+
e([
|
|
151
|
+
o({ type: String })
|
|
152
|
+
], t.prototype, "headline", 2);
|
|
153
|
+
e([
|
|
154
|
+
o({ type: String, attribute: "supporting-text" })
|
|
155
|
+
], t.prototype, "supportingText", 2);
|
|
156
|
+
e([
|
|
157
|
+
o({ type: String, attribute: "trailing-supporting-text" })
|
|
158
|
+
], t.prototype, "trailingSupportingText", 2);
|
|
159
|
+
e([
|
|
160
|
+
o({ type: Boolean, reflect: !0 })
|
|
161
|
+
], t.prototype, "interactive", 2);
|
|
162
|
+
e([
|
|
163
|
+
o({ type: Boolean, reflect: !0 })
|
|
164
|
+
], t.prototype, "disabled", 2);
|
|
165
|
+
e([
|
|
166
|
+
o({ type: String })
|
|
167
|
+
], t.prototype, "href", 2);
|
|
168
|
+
e([
|
|
169
|
+
o({ type: String })
|
|
170
|
+
], t.prototype, "target", 2);
|
|
171
|
+
t = e([
|
|
172
|
+
g("md-list-item")
|
|
173
|
+
], t);
|
|
174
|
+
let f = class extends p {
|
|
175
|
+
connectedCallback() {
|
|
176
|
+
super.connectedCallback(), this.setAttribute("role", "list");
|
|
177
|
+
}
|
|
178
|
+
render() {
|
|
179
|
+
return r`<slot></slot>`;
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
f.styles = [p.styles, y];
|
|
183
|
+
f = e([
|
|
184
|
+
g("md-list")
|
|
185
|
+
], f);
|
|
186
|
+
export {
|
|
187
|
+
f as MdList,
|
|
188
|
+
t as MdListItem
|
|
189
|
+
};
|
|
190
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sources":["../../../src/components/list/list.css.ts","../../../src/components/list/list.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport const listStyles = css`\n :host {\n display: flex;\n flex-direction: column;\n padding: 8px 0;\n box-sizing: border-box;\n }\n`;\n\nexport const listItemStyles = css`\n :host {\n display: flex;\n outline: none;\n box-sizing: border-box;\n -webkit-tap-highlight-color: transparent;\n }\n\n :host([disabled]) {\n pointer-events: none;\n opacity: 0.38;\n }\n\n .item {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n min-height: 56px;\n padding: 8px 16px;\n box-sizing: border-box;\n font-family: var(--md-sys-typescale-font-family, inherit);\n color: var(--md-sys-color-on-surface, #1D1B20);\n text-decoration: none;\n gap: 16px;\n user-select: none;\n overflow: hidden;\n }\n\n :host([interactive]) .item {\n cursor: pointer;\n }\n\n .start {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n color: var(--md-sys-color-on-surface-variant, #49454F);\n flex-shrink: 0;\n }\n\n .content {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n justify-content: center;\n }\n\n .headline {\n font-size: var(--md-sys-typescale-body-large-size, 16px);\n line-height: 24px;\n font-weight: 400;\n color: var(--md-sys-color-on-surface, #1D1B20);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .supporting-text {\n font-size: var(--md-sys-typescale-body-medium-size, 14px);\n line-height: 20px;\n font-weight: 400;\n color: var(--md-sys-color-on-surface-variant, #49454F);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .end {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n color: var(--md-sys-color-on-surface-variant, #49454F);\n font-size: var(--md-sys-typescale-label-small-size, 11px);\n flex-shrink: 0;\n }\n`;\n\n","import { html, nothing } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { MdBaseElement } from '../../internal/base-component.js';\nimport '../../internal/ripple/ripple.js';\nimport '../../internal/focus-ring/focus-ring.js';\nimport { listStyles, listItemStyles } from './list.css.js';\n\n@customElement('md-list-item')\nexport class MdListItem extends MdBaseElement {\n static override styles = [MdBaseElement.styles, listItemStyles];\n\n @property({ type: String })\n headline = '';\n\n @property({ type: String, attribute: 'supporting-text' })\n supportingText = '';\n\n @property({ type: String, attribute: 'trailing-supporting-text' })\n trailingSupportingText = '';\n\n @property({ type: Boolean, reflect: true })\n interactive = false;\n\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n @property({ type: String })\n href = '';\n\n @property({ type: String })\n target = '';\n\n private handleClick = (event: MouseEvent) => {\n if (this.disabled) {\n event.preventDefault();\n event.stopImmediatePropagation();\n return;\n }\n if (this.interactive) {\n this.emitEvent('item-click');\n }\n };\n\n override render() {\n const inner = html`\n ${this.interactive ? html`<md-ripple ?disabled=${this.disabled}></md-ripple><md-focus-ring></md-focus-ring>` : nothing}\n\n <div class=\"start\">\n <slot name=\"start\"></slot>\n </div>\n\n <div class=\"content\">\n <slot>\n ${this.headline ? html`<span class=\"headline\">${this.headline}</span>` : nothing}\n ${this.supportingText ? html`<span class=\"supporting-text\">${this.supportingText}</span>` : nothing}\n </slot>\n </div>\n\n <div class=\"end\">\n <slot name=\"end\">\n ${this.trailingSupportingText ? html`<span>${this.trailingSupportingText}</span>` : nothing}\n </slot>\n </div>\n `;\n\n if (this.href) {\n return html`\n <a\n class=\"item\"\n href=${this.disabled ? nothing : this.href}\n target=${this.target || nothing}\n aria-disabled=${this.disabled ? 'true' : nothing}\n tabindex=${this.disabled ? '-1' : '0'}\n @click=${this.handleClick}\n >\n ${inner}\n </a>\n `;\n }\n\n return html`\n <div\n class=\"item\"\n tabindex=${this.interactive && !this.disabled ? '0' : nothing}\n @click=${this.handleClick}\n >\n ${inner}\n </div>\n `;\n }\n}\n\n@customElement('md-list')\nexport class MdList extends MdBaseElement {\n static override styles = [MdBaseElement.styles, listStyles];\n\n override connectedCallback() {\n super.connectedCallback();\n this.setAttribute('role', 'list');\n }\n\n override render() {\n return html`<slot></slot>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-list': MdList;\n 'md-list-item': MdListItem;\n }\n}\n\n"],"names":["listStyles","css","listItemStyles","MdListItem","MdBaseElement","event","inner","html","nothing","__decorateClass","property","customElement","MdList"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress.css.d.ts","sourceRoot":"","sources":["../../../src/components/progress/progress.css.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,yBAkH1B,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { MdBaseElement } from '../../internal/base-component.js';
|
|
2
|
+
export type ProgressType = 'linear' | 'circular';
|
|
3
|
+
export declare class MdProgress extends MdBaseElement {
|
|
4
|
+
static styles: import('lit').CSSResultGroup[];
|
|
5
|
+
type: ProgressType;
|
|
6
|
+
value: number | null;
|
|
7
|
+
max: number;
|
|
8
|
+
buffer: number;
|
|
9
|
+
indeterminate: boolean;
|
|
10
|
+
willUpdate(changedProperties: Map<string, unknown>): void;
|
|
11
|
+
connectedCallback(): void;
|
|
12
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
13
|
+
}
|
|
14
|
+
declare global {
|
|
15
|
+
interface HTMLElementTagNameMap {
|
|
16
|
+
'md-progress': MdProgress;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=progress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../../src/components/progress/progress.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAGjE,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEjD,qBACa,UAAW,SAAQ,aAAa;IAC3C,OAAgB,MAAM,iCAA0C;IAGhE,IAAI,EAAE,YAAY,CAAY;IAG9B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG5B,GAAG,SAAK;IAGR,MAAM,SAAK;IAGX,aAAa,UAAQ;IAEZ,UAAU,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAYlD,iBAAiB;IAOjB,MAAM;CAgChB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,UAAU,CAAC;KAC3B;CACF"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
import { css as d, nothing as h, html as m } from "lit";
|
|
2
|
+
import { property as o, customElement as f } from "lit/decorators.js";
|
|
3
|
+
import { M as u } from "../../chunks/base-component-DQTjlEVL.js";
|
|
4
|
+
const p = d`
|
|
5
|
+
:host {
|
|
6
|
+
display: inline-flex;
|
|
7
|
+
vertical-align: middle;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
/* --- Linear Progress --- */
|
|
11
|
+
:host(:not([type])),
|
|
12
|
+
:host([type="linear"]) {
|
|
13
|
+
display: block;
|
|
14
|
+
width: 100%;
|
|
15
|
+
height: 4px;
|
|
16
|
+
position: relative;
|
|
17
|
+
overflow: hidden;
|
|
18
|
+
background-color: var(--md-sys-color-surface-container-highest, #E6E0E9);
|
|
19
|
+
border-radius: var(--md-sys-shape-corner-full, 9999px);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.linear-buffer {
|
|
23
|
+
position: absolute;
|
|
24
|
+
inset: 0;
|
|
25
|
+
background-color: var(--md-sys-color-primary-container, #EADDFF);
|
|
26
|
+
transform-origin: left;
|
|
27
|
+
transition: transform 200ms cubic-bezier(0.2, 0, 0, 1);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.linear-bar {
|
|
31
|
+
position: absolute;
|
|
32
|
+
top: 0;
|
|
33
|
+
bottom: 0;
|
|
34
|
+
left: 0;
|
|
35
|
+
right: 0;
|
|
36
|
+
background-color: var(--md-sys-color-primary, #6750A4);
|
|
37
|
+
border-radius: inherit;
|
|
38
|
+
transform-origin: left;
|
|
39
|
+
transition: transform 200ms cubic-bezier(0.2, 0, 0, 1);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
:host([indeterminate]:not([type])),
|
|
43
|
+
:host([indeterminate][type="linear"]) .linear-bar {
|
|
44
|
+
animation: md-linear-indeterminate 2s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
@keyframes md-linear-indeterminate {
|
|
48
|
+
0% {
|
|
49
|
+
left: -35%;
|
|
50
|
+
right: 100%;
|
|
51
|
+
}
|
|
52
|
+
60% {
|
|
53
|
+
left: 100%;
|
|
54
|
+
right: -90%;
|
|
55
|
+
}
|
|
56
|
+
100% {
|
|
57
|
+
left: 100%;
|
|
58
|
+
right: -90%;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/* --- Circular Progress --- */
|
|
63
|
+
:host([type="circular"]) {
|
|
64
|
+
width: 48px;
|
|
65
|
+
height: 48px;
|
|
66
|
+
position: relative;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
svg {
|
|
70
|
+
width: 100%;
|
|
71
|
+
height: 100%;
|
|
72
|
+
transform: rotate(-90deg);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
circle {
|
|
76
|
+
fill: none;
|
|
77
|
+
stroke-width: 4px;
|
|
78
|
+
stroke-linecap: round;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.circle-track {
|
|
82
|
+
stroke: var(--md-sys-color-surface-container-highest, #E6E0E9);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.circle-indicator {
|
|
86
|
+
stroke: var(--md-sys-color-primary, #6750A4);
|
|
87
|
+
transition: stroke-dashoffset 200ms cubic-bezier(0.2, 0, 0, 1);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
:host([indeterminate][type="circular"]) svg {
|
|
91
|
+
animation: md-circular-rotate 1.4s linear infinite;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
:host([indeterminate][type="circular"]) .circle-indicator {
|
|
95
|
+
animation: md-circular-dash 1.4s ease-in-out infinite;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
@keyframes md-circular-rotate {
|
|
99
|
+
100% {
|
|
100
|
+
transform: rotate(270deg);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
@keyframes md-circular-dash {
|
|
105
|
+
0% {
|
|
106
|
+
stroke-dasharray: 1, 200;
|
|
107
|
+
stroke-dashoffset: 0;
|
|
108
|
+
}
|
|
109
|
+
50% {
|
|
110
|
+
stroke-dasharray: 89, 200;
|
|
111
|
+
stroke-dashoffset: -35px;
|
|
112
|
+
}
|
|
113
|
+
100% {
|
|
114
|
+
stroke-dasharray: 89, 200;
|
|
115
|
+
stroke-dashoffset: -124px;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
`;
|
|
119
|
+
var y = Object.defineProperty, b = Object.getOwnPropertyDescriptor, a = (r, s, n, t) => {
|
|
120
|
+
for (var e = t > 1 ? void 0 : t ? b(s, n) : s, l = r.length - 1, c; l >= 0; l--)
|
|
121
|
+
(c = r[l]) && (e = (t ? c(s, n, e) : c(e)) || e);
|
|
122
|
+
return t && e && y(s, n, e), e;
|
|
123
|
+
};
|
|
124
|
+
let i = class extends u {
|
|
125
|
+
constructor() {
|
|
126
|
+
super(...arguments), this.type = "linear", this.value = null, this.max = 1, this.buffer = 1, this.indeterminate = !0;
|
|
127
|
+
}
|
|
128
|
+
willUpdate(r) {
|
|
129
|
+
super.willUpdate(r), r.has("value") && (this.indeterminate = this.value === null || this.value === void 0, !this.indeterminate && this.value !== null ? this.setAttribute("aria-valuenow", String(this.value)) : this.removeAttribute("aria-valuenow"));
|
|
130
|
+
}
|
|
131
|
+
connectedCallback() {
|
|
132
|
+
super.connectedCallback(), this.setAttribute("role", "progressbar"), this.setAttribute("aria-valuemin", "0"), this.setAttribute("aria-valuemax", String(this.max));
|
|
133
|
+
}
|
|
134
|
+
render() {
|
|
135
|
+
const r = this.value !== null ? Math.min(Math.max(this.value / this.max, 0), 1) : 0, s = Math.min(Math.max(this.buffer / this.max, 0), 1);
|
|
136
|
+
if (this.type === "circular") {
|
|
137
|
+
const t = 2 * Math.PI * 20, e = t - r * t;
|
|
138
|
+
return m`
|
|
139
|
+
<svg viewBox="0 0 48 48">
|
|
140
|
+
<circle class="circle-track" cx="24" cy="24" r=${20}></circle>
|
|
141
|
+
<circle
|
|
142
|
+
class="circle-indicator"
|
|
143
|
+
cx="24"
|
|
144
|
+
cy="24"
|
|
145
|
+
r=${20}
|
|
146
|
+
stroke-dasharray=${this.indeterminate ? h : `${t}`}
|
|
147
|
+
stroke-dashoffset=${this.indeterminate ? h : `${e}`}
|
|
148
|
+
></circle>
|
|
149
|
+
</svg>
|
|
150
|
+
`;
|
|
151
|
+
}
|
|
152
|
+
return m`
|
|
153
|
+
${this.buffer < 1 ? m`<div class="linear-buffer" style="transform: scaleX(${s})"></div>` : h}
|
|
154
|
+
<div
|
|
155
|
+
class="linear-bar"
|
|
156
|
+
style=${this.indeterminate ? "" : `transform: scaleX(${r})`}
|
|
157
|
+
></div>
|
|
158
|
+
`;
|
|
159
|
+
}
|
|
160
|
+
};
|
|
161
|
+
i.styles = [u.styles, p];
|
|
162
|
+
a([
|
|
163
|
+
o({ type: String, reflect: !0 })
|
|
164
|
+
], i.prototype, "type", 2);
|
|
165
|
+
a([
|
|
166
|
+
o({ type: Number })
|
|
167
|
+
], i.prototype, "value", 2);
|
|
168
|
+
a([
|
|
169
|
+
o({ type: Number })
|
|
170
|
+
], i.prototype, "max", 2);
|
|
171
|
+
a([
|
|
172
|
+
o({ type: Number })
|
|
173
|
+
], i.prototype, "buffer", 2);
|
|
174
|
+
a([
|
|
175
|
+
o({ type: Boolean, reflect: !0 })
|
|
176
|
+
], i.prototype, "indeterminate", 2);
|
|
177
|
+
i = a([
|
|
178
|
+
f("md-progress")
|
|
179
|
+
], i);
|
|
180
|
+
export {
|
|
181
|
+
i as MdProgress
|
|
182
|
+
};
|
|
183
|
+
//# sourceMappingURL=progress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress.js","sources":["../../../src/components/progress/progress.css.ts","../../../src/components/progress/progress.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport const progressStyles = css`\n :host {\n display: inline-flex;\n vertical-align: middle;\n }\n\n /* --- Linear Progress --- */\n :host(:not([type])),\n :host([type=\"linear\"]) {\n display: block;\n width: 100%;\n height: 4px;\n position: relative;\n overflow: hidden;\n background-color: var(--md-sys-color-surface-container-highest, #E6E0E9);\n border-radius: var(--md-sys-shape-corner-full, 9999px);\n }\n\n .linear-buffer {\n position: absolute;\n inset: 0;\n background-color: var(--md-sys-color-primary-container, #EADDFF);\n transform-origin: left;\n transition: transform 200ms cubic-bezier(0.2, 0, 0, 1);\n }\n\n .linear-bar {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: var(--md-sys-color-primary, #6750A4);\n border-radius: inherit;\n transform-origin: left;\n transition: transform 200ms cubic-bezier(0.2, 0, 0, 1);\n }\n\n :host([indeterminate]:not([type])),\n :host([indeterminate][type=\"linear\"]) .linear-bar {\n animation: md-linear-indeterminate 2s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n }\n\n @keyframes md-linear-indeterminate {\n 0% {\n left: -35%;\n right: 100%;\n }\n 60% {\n left: 100%;\n right: -90%;\n }\n 100% {\n left: 100%;\n right: -90%;\n }\n }\n\n /* --- Circular Progress --- */\n :host([type=\"circular\"]) {\n width: 48px;\n height: 48px;\n position: relative;\n }\n\n svg {\n width: 100%;\n height: 100%;\n transform: rotate(-90deg);\n }\n\n circle {\n fill: none;\n stroke-width: 4px;\n stroke-linecap: round;\n }\n\n .circle-track {\n stroke: var(--md-sys-color-surface-container-highest, #E6E0E9);\n }\n\n .circle-indicator {\n stroke: var(--md-sys-color-primary, #6750A4);\n transition: stroke-dashoffset 200ms cubic-bezier(0.2, 0, 0, 1);\n }\n\n :host([indeterminate][type=\"circular\"]) svg {\n animation: md-circular-rotate 1.4s linear infinite;\n }\n\n :host([indeterminate][type=\"circular\"]) .circle-indicator {\n animation: md-circular-dash 1.4s ease-in-out infinite;\n }\n\n @keyframes md-circular-rotate {\n 100% {\n transform: rotate(270deg);\n }\n }\n\n @keyframes md-circular-dash {\n 0% {\n stroke-dasharray: 1, 200;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -35px;\n }\n 100% {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -124px;\n }\n }\n`;\n\n","import { html, nothing } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { MdBaseElement } from '../../internal/base-component.js';\nimport { progressStyles } from './progress.css.js';\n\nexport type ProgressType = 'linear' | 'circular';\n\n@customElement('md-progress')\nexport class MdProgress extends MdBaseElement {\n static override styles = [MdBaseElement.styles, progressStyles];\n\n @property({ type: String, reflect: true })\n type: ProgressType = 'linear';\n\n @property({ type: Number })\n value: number | null = null;\n\n @property({ type: Number })\n max = 1;\n\n @property({ type: Number })\n buffer = 1;\n\n @property({ type: Boolean, reflect: true })\n indeterminate = true;\n\n override willUpdate(changedProperties: Map<string, unknown>) {\n super.willUpdate(changedProperties);\n if (changedProperties.has('value')) {\n this.indeterminate = this.value === null || this.value === undefined;\n if (!this.indeterminate && this.value !== null) {\n this.setAttribute('aria-valuenow', String(this.value));\n } else {\n this.removeAttribute('aria-valuenow');\n }\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n this.setAttribute('role', 'progressbar');\n this.setAttribute('aria-valuemin', '0');\n this.setAttribute('aria-valuemax', String(this.max));\n }\n\n override render() {\n const fraction = this.value !== null ? Math.min(Math.max(this.value / this.max, 0), 1) : 0;\n const bufferFraction = Math.min(Math.max(this.buffer / this.max, 0), 1);\n\n if (this.type === 'circular') {\n const radius = 20;\n const circumference = 2 * Math.PI * radius;\n const offset = circumference - fraction * circumference;\n\n return html`\n <svg viewBox=\"0 0 48 48\">\n <circle class=\"circle-track\" cx=\"24\" cy=\"24\" r=${radius}></circle>\n <circle\n class=\"circle-indicator\"\n cx=\"24\"\n cy=\"24\"\n r=${radius}\n stroke-dasharray=${this.indeterminate ? nothing : `${circumference}`}\n stroke-dashoffset=${this.indeterminate ? nothing : `${offset}`}\n ></circle>\n </svg>\n `;\n }\n\n return html`\n ${this.buffer < 1 ? html`<div class=\"linear-buffer\" style=\"transform: scaleX(${bufferFraction})\"></div>` : nothing}\n <div\n class=\"linear-bar\"\n style=${this.indeterminate ? '' : `transform: scaleX(${fraction})`}\n ></div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-progress': MdProgress;\n }\n}\n\n"],"names":["progressStyles","css","MdProgress","MdBaseElement","changedProperties","fraction","bufferFraction","circumference","offset","html","nothing","__decorateClass","property","customElement"],"mappings":";;;AAEO,MAAMA,IAAiBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;ACMvB,IAAMC,IAAN,cAAyBC,EAAc;AAAA,EAAvC,cAAA;AAAA,UAAA,GAAA,SAAA,GAIL,KAAA,OAAqB,UAGrB,KAAA,QAAuB,MAGvB,KAAA,MAAM,GAGN,KAAA,SAAS,GAGT,KAAA,gBAAgB;AAAA,EAAA;AAAA,EAEP,WAAWC,GAAyC;AAC3D,UAAM,WAAWA,CAAiB,GAC9BA,EAAkB,IAAI,OAAO,MAC/B,KAAK,gBAAgB,KAAK,UAAU,QAAQ,KAAK,UAAU,QACvD,CAAC,KAAK,iBAAiB,KAAK,UAAU,OACxC,KAAK,aAAa,iBAAiB,OAAO,KAAK,KAAK,CAAC,IAErD,KAAK,gBAAgB,eAAe;AAAA,EAG1C;AAAA,EAES,oBAAoB;AAC3B,UAAM,kBAAA,GACN,KAAK,aAAa,QAAQ,aAAa,GACvC,KAAK,aAAa,iBAAiB,GAAG,GACtC,KAAK,aAAa,iBAAiB,OAAO,KAAK,GAAG,CAAC;AAAA,EACrD;AAAA,EAES,SAAS;AAChB,UAAMC,IAAW,KAAK,UAAU,OAAO,KAAK,IAAI,KAAK,IAAI,KAAK,QAAQ,KAAK,KAAK,CAAC,GAAG,CAAC,IAAI,GACnFC,IAAiB,KAAK,IAAI,KAAK,IAAI,KAAK,SAAS,KAAK,KAAK,CAAC,GAAG,CAAC;AAEtE,QAAI,KAAK,SAAS,YAAY;AAE5B,YAAMC,IAAgB,IAAI,KAAK,KAAK,IAC9BC,IAASD,IAAgBF,IAAWE;AAE1C,aAAOE;AAAA;AAAA,2DAE8C,EAAM;AAAA;AAAA;AAAA;AAAA;AAAA,gBAKjD,EAAM;AAAA,+BACS,KAAK,gBAAgBC,IAAU,GAAGH,CAAa,EAAE;AAAA,gCAChD,KAAK,gBAAgBG,IAAU,GAAGF,CAAM,EAAE;AAAA;AAAA;AAAA;AAAA,IAItE;AAEA,WAAOC;AAAA,QACH,KAAK,SAAS,IAAIA,wDAA2DH,CAAc,cAAcI,CAAO;AAAA;AAAA;AAAA,gBAGxG,KAAK,gBAAgB,KAAK,qBAAqBL,CAAQ,GAAG;AAAA;AAAA;AAAA,EAGxE;AACF;AArEaH,EACK,SAAS,CAACC,EAAc,QAAQH,CAAc;AAG9DW,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,QAAQ,SAAS,IAAM;AAAA,GAH9BV,EAIX,WAAA,QAAA,CAAA;AAGAS,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,OAAA,CAAQ;AAAA,GANfV,EAOX,WAAA,SAAA,CAAA;AAGAS,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,OAAA,CAAQ;AAAA,GATfV,EAUX,WAAA,OAAA,CAAA;AAGAS,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,OAAA,CAAQ;AAAA,GAZfV,EAaX,WAAA,UAAA,CAAA;AAGAS,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,SAAS,SAAS,IAAM;AAAA,GAf/BV,EAgBX,WAAA,iBAAA,CAAA;AAhBWA,IAANS,EAAA;AAAA,EADNE,EAAc,aAAa;AAAA,GACfX,CAAA;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radio.css.d.ts","sourceRoot":"","sources":["../../../src/components/radio/radio.css.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,yBAqEvB,CAAC;AAEF,eAAO,MAAM,gBAAgB,yBAY5B,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { MdBaseElement } from '../../internal/base-component.js';
|
|
2
|
+
import { MdFormAssociatedElement } from '../../internal/form-associated.js';
|
|
3
|
+
export declare class MdRadio extends MdFormAssociatedElement {
|
|
4
|
+
static styles: import('lit').CSSResultGroup[];
|
|
5
|
+
checked: boolean;
|
|
6
|
+
value: string;
|
|
7
|
+
connectedCallback(): void;
|
|
8
|
+
disconnectedCallback(): void;
|
|
9
|
+
updated(changedProperties: Map<string, unknown>): void;
|
|
10
|
+
formResetCallback(): void;
|
|
11
|
+
private updateFormValue;
|
|
12
|
+
private handleClick;
|
|
13
|
+
private handleKeyDown;
|
|
14
|
+
select(): void;
|
|
15
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
16
|
+
}
|
|
17
|
+
export declare class MdRadioGroup extends MdBaseElement {
|
|
18
|
+
static styles: import('lit').CSSResultGroup[];
|
|
19
|
+
name: string;
|
|
20
|
+
value: string;
|
|
21
|
+
row: boolean;
|
|
22
|
+
private radios;
|
|
23
|
+
connectedCallback(): void;
|
|
24
|
+
disconnectedCallback(): void;
|
|
25
|
+
updated(changedProperties: Map<string, unknown>): void;
|
|
26
|
+
private handleSlotChange;
|
|
27
|
+
private syncRadios;
|
|
28
|
+
private handleChange;
|
|
29
|
+
private handleKeyDown;
|
|
30
|
+
render(): import('lit-html').TemplateResult<1>;
|
|
31
|
+
}
|
|
32
|
+
declare global {
|
|
33
|
+
interface HTMLElementTagNameMap {
|
|
34
|
+
'md-radio': MdRadio;
|
|
35
|
+
'md-radio-group': MdRadioGroup;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=radio.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radio.d.ts","sourceRoot":"","sources":["../../../src/components/radio/radio.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,iCAAiC,CAAC;AACzC,OAAO,yCAAyC,CAAC;AAGjD,qBACa,OAAQ,SAAQ,uBAAuB;IAClD,OAAgB,MAAM,iCAAiD;IAGvE,OAAO,UAAS;IAGhB,KAAK,SAAQ;IAEJ,iBAAiB;IAQjB,oBAAoB;IAMpB,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAQ/C,iBAAiB;IAK1B,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,WAAW,CAIjB;IAEF,OAAO,CAAC,aAAa,CAMnB;IAEF,MAAM;IAmBG,MAAM;CAYhB;AAED,qBACa,YAAa,SAAQ,aAAa;IAC7C,OAAgB,MAAM,iCAA4C;IAGlE,IAAI,SAAM;IAGV,KAAK,SAAM;IAGX,GAAG,UAAS;IAGZ,OAAO,CAAC,MAAM,CAAa;IAElB,iBAAiB;IAMjB,oBAAoB;IAMpB,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAOxD,OAAO,CAAC,gBAAgB,CAEtB;IAEF,OAAO,CAAC,UAAU;IAkBlB,OAAO,CAAC,YAAY,CAMlB;IAEF,OAAO,CAAC,aAAa,CAsBnB;IAEO,MAAM;CAGhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,OAAO,CAAC;QACpB,gBAAgB,EAAE,YAAY,CAAC;KAChC;CACF"}
|