@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.
Files changed (148) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +192 -0
  3. package/custom-elements.json +5448 -0
  4. package/dist/chunks/base-component-DQTjlEVL.js +34 -0
  5. package/dist/chunks/base-component-DQTjlEVL.js.map +1 -0
  6. package/dist/chunks/focus-ring-Dl-XoEKK.js +71 -0
  7. package/dist/chunks/focus-ring-Dl-XoEKK.js.map +1 -0
  8. package/dist/chunks/form-associated-fKbeX_2P.js +74 -0
  9. package/dist/chunks/form-associated-fKbeX_2P.js.map +1 -0
  10. package/dist/chunks/theme.css-DV3DRha-.js +263 -0
  11. package/dist/chunks/theme.css-DV3DRha-.js.map +1 -0
  12. package/dist/components/badge/badge.css.d.ts +2 -0
  13. package/dist/components/badge/badge.css.d.ts.map +1 -0
  14. package/dist/components/badge/badge.d.ts +16 -0
  15. package/dist/components/badge/badge.d.ts.map +1 -0
  16. package/dist/components/badge/badge.js +93 -0
  17. package/dist/components/badge/badge.js.map +1 -0
  18. package/dist/components/button/button.css.d.ts +2 -0
  19. package/dist/components/button/button.css.d.ts.map +1 -0
  20. package/dist/components/button/button.d.ts +25 -0
  21. package/dist/components/button/button.d.ts.map +1 -0
  22. package/dist/components/button/button.js +263 -0
  23. package/dist/components/button/button.js.map +1 -0
  24. package/dist/components/card/card.css.d.ts +2 -0
  25. package/dist/components/card/card.css.d.ts.map +1 -0
  26. package/dist/components/card/card.d.ts +18 -0
  27. package/dist/components/card/card.d.ts.map +1 -0
  28. package/dist/components/card/card.js +169 -0
  29. package/dist/components/card/card.js.map +1 -0
  30. package/dist/components/checkbox/checkbox.css.d.ts +2 -0
  31. package/dist/components/checkbox/checkbox.css.d.ts.map +1 -0
  32. package/dist/components/checkbox/checkbox.d.ts +24 -0
  33. package/dist/components/checkbox/checkbox.d.ts.map +1 -0
  34. package/dist/components/checkbox/checkbox.js +188 -0
  35. package/dist/components/checkbox/checkbox.js.map +1 -0
  36. package/dist/components/chip/chip.css.d.ts +3 -0
  37. package/dist/components/chip/chip.css.d.ts.map +1 -0
  38. package/dist/components/chip/chip.d.ts +27 -0
  39. package/dist/components/chip/chip.d.ts.map +1 -0
  40. package/dist/components/chip/chip.js +174 -0
  41. package/dist/components/chip/chip.js.map +1 -0
  42. package/dist/components/dialog/dialog.css.d.ts +2 -0
  43. package/dist/components/dialog/dialog.css.d.ts.map +1 -0
  44. package/dist/components/dialog/dialog.d.ts +22 -0
  45. package/dist/components/dialog/dialog.d.ts.map +1 -0
  46. package/dist/components/dialog/dialog.js +167 -0
  47. package/dist/components/dialog/dialog.js.map +1 -0
  48. package/dist/components/divider/divider.css.d.ts +2 -0
  49. package/dist/components/divider/divider.css.d.ts.map +1 -0
  50. package/dist/components/divider/divider.d.ts +16 -0
  51. package/dist/components/divider/divider.d.ts.map +1 -0
  52. package/dist/components/divider/divider.js +81 -0
  53. package/dist/components/divider/divider.js.map +1 -0
  54. package/dist/components/fab/fab.css.d.ts +2 -0
  55. package/dist/components/fab/fab.css.d.ts.map +1 -0
  56. package/dist/components/fab/fab.d.ts +19 -0
  57. package/dist/components/fab/fab.d.ts.map +1 -0
  58. package/dist/components/fab/fab.js +155 -0
  59. package/dist/components/fab/fab.js.map +1 -0
  60. package/dist/components/icon/icon.css.d.ts +2 -0
  61. package/dist/components/icon/icon.css.d.ts.map +1 -0
  62. package/dist/components/icon/icon.d.ts +15 -0
  63. package/dist/components/icon/icon.d.ts.map +1 -0
  64. package/dist/components/icon/icon.js +70 -0
  65. package/dist/components/icon/icon.js.map +1 -0
  66. package/dist/components/icon-button/icon-button.css.d.ts +2 -0
  67. package/dist/components/icon-button/icon-button.css.d.ts.map +1 -0
  68. package/dist/components/icon-button/icon-button.d.ts +22 -0
  69. package/dist/components/icon-button/icon-button.d.ts.map +1 -0
  70. package/dist/components/icon-button/icon-button.js +192 -0
  71. package/dist/components/icon-button/icon-button.js.map +1 -0
  72. package/dist/components/list/list.css.d.ts +3 -0
  73. package/dist/components/list/list.css.d.ts.map +1 -0
  74. package/dist/components/list/list.d.ts +25 -0
  75. package/dist/components/list/list.d.ts.map +1 -0
  76. package/dist/components/list/list.js +190 -0
  77. package/dist/components/list/list.js.map +1 -0
  78. package/dist/components/progress/progress.css.d.ts +2 -0
  79. package/dist/components/progress/progress.css.d.ts.map +1 -0
  80. package/dist/components/progress/progress.d.ts +19 -0
  81. package/dist/components/progress/progress.d.ts.map +1 -0
  82. package/dist/components/progress/progress.js +183 -0
  83. package/dist/components/progress/progress.js.map +1 -0
  84. package/dist/components/radio/radio.css.d.ts +3 -0
  85. package/dist/components/radio/radio.css.d.ts.map +1 -0
  86. package/dist/components/radio/radio.d.ts +38 -0
  87. package/dist/components/radio/radio.d.ts.map +1 -0
  88. package/dist/components/radio/radio.js +205 -0
  89. package/dist/components/radio/radio.js.map +1 -0
  90. package/dist/components/snackbar/snackbar.css.d.ts +2 -0
  91. package/dist/components/snackbar/snackbar.css.d.ts.map +1 -0
  92. package/dist/components/snackbar/snackbar.d.ts +24 -0
  93. package/dist/components/snackbar/snackbar.d.ts.map +1 -0
  94. package/dist/components/snackbar/snackbar.js +164 -0
  95. package/dist/components/snackbar/snackbar.js.map +1 -0
  96. package/dist/components/switch/switch.css.d.ts +2 -0
  97. package/dist/components/switch/switch.css.d.ts.map +1 -0
  98. package/dist/components/switch/switch.d.ts +22 -0
  99. package/dist/components/switch/switch.d.ts.map +1 -0
  100. package/dist/components/switch/switch.js +171 -0
  101. package/dist/components/switch/switch.js.map +1 -0
  102. package/dist/components/tabs/tabs.css.d.ts +3 -0
  103. package/dist/components/tabs/tabs.css.d.ts.map +1 -0
  104. package/dist/components/tabs/tabs.d.ts +33 -0
  105. package/dist/components/tabs/tabs.d.ts.map +1 -0
  106. package/dist/components/tabs/tabs.js +200 -0
  107. package/dist/components/tabs/tabs.js.map +1 -0
  108. package/dist/components/text-field/text-field.css.d.ts +2 -0
  109. package/dist/components/text-field/text-field.css.d.ts.map +1 -0
  110. package/dist/components/text-field/text-field.d.ts +40 -0
  111. package/dist/components/text-field/text-field.d.ts.map +1 -0
  112. package/dist/components/text-field/text-field.js +327 -0
  113. package/dist/components/text-field/text-field.js.map +1 -0
  114. package/dist/index.d.ts +23 -0
  115. package/dist/index.d.ts.map +1 -0
  116. package/dist/index.js +59 -0
  117. package/dist/index.js.map +1 -0
  118. package/dist/internal/base-component.d.ts +13 -0
  119. package/dist/internal/base-component.d.ts.map +1 -0
  120. package/dist/internal/focus-ring/focus-ring.css.d.ts +2 -0
  121. package/dist/internal/focus-ring/focus-ring.css.d.ts.map +1 -0
  122. package/dist/internal/focus-ring/focus-ring.d.ts +18 -0
  123. package/dist/internal/focus-ring/focus-ring.d.ts.map +1 -0
  124. package/dist/internal/form-associated.d.ts +26 -0
  125. package/dist/internal/form-associated.d.ts.map +1 -0
  126. package/dist/internal/ripple/ripple.css.d.ts +2 -0
  127. package/dist/internal/ripple/ripple.css.d.ts.map +1 -0
  128. package/dist/internal/ripple/ripple.d.ts +26 -0
  129. package/dist/internal/ripple/ripple.d.ts.map +1 -0
  130. package/dist/internal/ripple/ripple.js +144 -0
  131. package/dist/internal/ripple/ripple.js.map +1 -0
  132. package/dist/tokens/colors.d.ts +42 -0
  133. package/dist/tokens/colors.d.ts.map +1 -0
  134. package/dist/tokens/elevation.d.ts +9 -0
  135. package/dist/tokens/elevation.d.ts.map +1 -0
  136. package/dist/tokens/index.d.ts +7 -0
  137. package/dist/tokens/index.d.ts.map +1 -0
  138. package/dist/tokens/index.js +13 -0
  139. package/dist/tokens/index.js.map +1 -0
  140. package/dist/tokens/motion.d.ts +21 -0
  141. package/dist/tokens/motion.d.ts.map +1 -0
  142. package/dist/tokens/shape.d.ts +10 -0
  143. package/dist/tokens/shape.d.ts.map +1 -0
  144. package/dist/tokens/theme.css.d.ts +4 -0
  145. package/dist/tokens/theme.css.d.ts.map +1 -0
  146. package/dist/tokens/typography.d.ts +101 -0
  147. package/dist/tokens/typography.d.ts.map +1 -0
  148. package/package.json +133 -0
@@ -0,0 +1,34 @@
1
+ import { LitElement as n, css as i } from "lit";
2
+ class m extends n {
3
+ static {
4
+ this.styles = i`
5
+ :host {
6
+ box-sizing: border-box;
7
+ font-family: var(--md-sys-typescale-font-family, 'Roboto', -apple-system, BlinkMacSystemFont, sans-serif);
8
+ -webkit-font-smoothing: antialiased;
9
+ -moz-osx-font-smoothing: grayscale;
10
+ }
11
+
12
+ *, *::before, *::after {
13
+ box-sizing: inherit;
14
+ }
15
+ `;
16
+ }
17
+ /**
18
+ * Helper to dispatch custom events with standard bubbles/composed defaults.
19
+ */
20
+ emitEvent(t, e, s = {}) {
21
+ const o = new CustomEvent(t, {
22
+ bubbles: !0,
23
+ composed: !0,
24
+ cancelable: !0,
25
+ detail: e,
26
+ ...s
27
+ });
28
+ return this.dispatchEvent(o);
29
+ }
30
+ }
31
+ export {
32
+ m as M
33
+ };
34
+ //# sourceMappingURL=base-component-DQTjlEVL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-component-DQTjlEVL.js","sources":["../../src/internal/base-component.ts"],"sourcesContent":["import { LitElement, css, CSSResultGroup } from 'lit';\n\n/**\n * Base element class for all Material Web Components.\n * Provides standard reset styles and event dispatch helpers.\n */\nexport class MdBaseElement extends LitElement {\n static override styles: CSSResultGroup = css`\n :host {\n box-sizing: border-box;\n font-family: var(--md-sys-typescale-font-family, 'Roboto', -apple-system, BlinkMacSystemFont, sans-serif);\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n *, *::before, *::after {\n box-sizing: inherit;\n }\n `;\n\n /**\n * Helper to dispatch custom events with standard bubbles/composed defaults.\n */\n protected emitEvent<T = unknown>(\n name: string,\n detail?: T,\n options: CustomEventInit<T> = {}\n ): boolean {\n const event = new CustomEvent<T>(name, {\n bubbles: true,\n composed: true,\n cancelable: true,\n detail,\n ...options,\n });\n return this.dispatchEvent(event);\n }\n}\n\n"],"names":["MdBaseElement","LitElement","css","name","detail","options","event"],"mappings":";AAMO,MAAMA,UAAsBC,EAAW;AAAA,EAC5C,OAAA;AAAA,SAAgB,SAAyBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA,EAgB/B,UACRC,GACAC,GACAC,IAA8B,CAAA,GACrB;AACT,UAAMC,IAAQ,IAAI,YAAeH,GAAM;AAAA,MACrC,SAAS;AAAA,MACT,UAAU;AAAA,MACV,YAAY;AAAA,MACZ,QAAAC;AAAA,MACA,GAAGC;AAAA,IAAA,CACJ;AACD,WAAO,KAAK,cAAcC,CAAK;AAAA,EACjC;AACF;"}
@@ -0,0 +1,71 @@
1
+ import { css as h, html as d } from "lit";
2
+ import { property as a, customElement as f } from "lit/decorators.js";
3
+ import { M as u } from "./base-component-DQTjlEVL.js";
4
+ const p = h`
5
+ :host {
6
+ display: none;
7
+ position: absolute;
8
+ inset: -4px;
9
+ border: 3px solid var(--md-sys-color-secondary, #625B71);
10
+ border-radius: inherit;
11
+ pointer-events: none;
12
+ box-sizing: border-box;
13
+ }
14
+
15
+ :host([visible]) {
16
+ display: block;
17
+ animation: md-focus-ring-in 150ms cubic-bezier(0.2, 0, 0, 1);
18
+ }
19
+
20
+ :host([inward]) {
21
+ inset: 0px;
22
+ }
23
+
24
+ @keyframes md-focus-ring-in {
25
+ from {
26
+ opacity: 0;
27
+ transform: scale(0.96);
28
+ }
29
+ to {
30
+ opacity: 1;
31
+ transform: scale(1);
32
+ }
33
+ }
34
+ `;
35
+ var m = Object.defineProperty, b = Object.getOwnPropertyDescriptor, l = (c, s, i, o) => {
36
+ for (var e = o > 1 ? void 0 : o ? b(s, i) : s, r = c.length - 1, n; r >= 0; r--)
37
+ (n = c[r]) && (e = (o ? n(s, i, e) : n(e)) || e);
38
+ return o && e && m(s, i, e), e;
39
+ };
40
+ let t = class extends u {
41
+ constructor() {
42
+ super(...arguments), this.visible = !1, this.inward = !1, this.control = null, this.handleFocusIn = () => {
43
+ (this.control?.matches(":focus-visible") || this.control?.querySelector(":focus-visible")) && (this.visible = !0);
44
+ }, this.handleFocusOut = () => {
45
+ this.visible = !1;
46
+ };
47
+ }
48
+ connectedCallback() {
49
+ super.connectedCallback(), this.control = this.parentElement || this.getRootNode()?.host, this.control && (this.control.addEventListener("focusin", this.handleFocusIn), this.control.addEventListener("focusout", this.handleFocusOut));
50
+ }
51
+ disconnectedCallback() {
52
+ super.disconnectedCallback(), this.control && (this.control.removeEventListener("focusin", this.handleFocusIn), this.control.removeEventListener("focusout", this.handleFocusOut));
53
+ }
54
+ render() {
55
+ return d``;
56
+ }
57
+ };
58
+ t.styles = [u.styles, p];
59
+ l([
60
+ a({ type: Boolean, reflect: !0 })
61
+ ], t.prototype, "visible", 2);
62
+ l([
63
+ a({ type: Boolean, reflect: !0 })
64
+ ], t.prototype, "inward", 2);
65
+ t = l([
66
+ f("md-focus-ring")
67
+ ], t);
68
+ export {
69
+ t as M
70
+ };
71
+ //# sourceMappingURL=focus-ring-Dl-XoEKK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-ring-Dl-XoEKK.js","sources":["../../src/internal/focus-ring/focus-ring.css.ts","../../src/internal/focus-ring/focus-ring.ts"],"sourcesContent":["import { css } from 'lit';\n\nexport const focusRingStyles = css`\n :host {\n display: none;\n position: absolute;\n inset: -4px;\n border: 3px solid var(--md-sys-color-secondary, #625B71);\n border-radius: inherit;\n pointer-events: none;\n box-sizing: border-box;\n }\n\n :host([visible]) {\n display: block;\n animation: md-focus-ring-in 150ms cubic-bezier(0.2, 0, 0, 1);\n }\n\n :host([inward]) {\n inset: 0px;\n }\n\n @keyframes md-focus-ring-in {\n from {\n opacity: 0;\n transform: scale(0.96);\n }\n to {\n opacity: 1;\n transform: scale(1);\n }\n }\n`;\n\n","import { html } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { MdBaseElement } from '../base-component.js';\nimport { focusRingStyles } from './focus-ring.css.js';\n\n@customElement('md-focus-ring')\nexport class MdFocusRing extends MdBaseElement {\n static override styles = [MdBaseElement.styles, focusRingStyles];\n\n @property({ type: Boolean, reflect: true })\n visible = false;\n\n @property({ type: Boolean, reflect: true })\n inward = false;\n\n private control: HTMLElement | null = null;\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.control = (this.parentElement || (this.getRootNode() as ShadowRoot)?.host) as HTMLElement | null;\n if (this.control) {\n this.control.addEventListener('focusin', this.handleFocusIn);\n this.control.addEventListener('focusout', this.handleFocusOut);\n }\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n if (this.control) {\n this.control.removeEventListener('focusin', this.handleFocusIn);\n this.control.removeEventListener('focusout', this.handleFocusOut);\n }\n }\n\n private handleFocusIn = (): void => {\n if (this.control?.matches(':focus-visible') || this.control?.querySelector(':focus-visible')) {\n this.visible = true;\n }\n };\n\n private handleFocusOut = (): void => {\n this.visible = false;\n };\n\n override render() {\n return html``;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-focus-ring': MdFocusRing;\n }\n}\n\n"],"names":["focusRingStyles","css","MdFocusRing","MdBaseElement","html","__decorateClass","property","customElement"],"mappings":";;;AAEO,MAAMA,IAAkBC;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;;;;;;ACIxB,IAAMC,IAAN,cAA0BC,EAAc;AAAA,EAAxC,cAAA;AAAA,UAAA,GAAA,SAAA,GAIL,KAAA,UAAU,IAGV,KAAA,SAAS,IAET,KAAQ,UAA8B,MAmBtC,KAAQ,gBAAgB,MAAY;AAClC,OAAI,KAAK,SAAS,QAAQ,gBAAgB,KAAK,KAAK,SAAS,cAAc,gBAAgB,OACzF,KAAK,UAAU;AAAA,IAEnB,GAEA,KAAQ,iBAAiB,MAAY;AACnC,WAAK,UAAU;AAAA,IACjB;AAAA,EAAA;AAAA,EAzBS,oBAA0B;AACjC,UAAM,kBAAA,GACN,KAAK,UAAW,KAAK,iBAAkB,KAAK,eAA8B,MACtE,KAAK,YACP,KAAK,QAAQ,iBAAiB,WAAW,KAAK,aAAa,GAC3D,KAAK,QAAQ,iBAAiB,YAAY,KAAK,cAAc;AAAA,EAEjE;AAAA,EAES,uBAA6B;AACpC,UAAM,qBAAA,GACF,KAAK,YACP,KAAK,QAAQ,oBAAoB,WAAW,KAAK,aAAa,GAC9D,KAAK,QAAQ,oBAAoB,YAAY,KAAK,cAAc;AAAA,EAEpE;AAAA,EAYS,SAAS;AAChB,WAAOC;AAAA,EACT;AACF;AAzCaF,EACK,SAAS,CAACC,EAAc,QAAQH,CAAe;AAG/DK,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,SAAS,SAAS,IAAM;AAAA,GAH/BJ,EAIX,WAAA,WAAA,CAAA;AAGAG,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,SAAS,SAAS,IAAM;AAAA,GAN/BJ,EAOX,WAAA,UAAA,CAAA;AAPWA,IAANG,EAAA;AAAA,EADNE,EAAc,eAAe;AAAA,GACjBL,CAAA;"}
@@ -0,0 +1,74 @@
1
+ import { property as r } from "lit/decorators.js";
2
+ import { M as h } from "./base-component-DQTjlEVL.js";
3
+ var f = Object.defineProperty, l = (s, t, i, o) => {
4
+ for (var e = void 0, a = s.length - 1, d; a >= 0; a--)
5
+ (d = s[a]) && (e = d(t, i, e) || e);
6
+ return e && f(t, i, e), e;
7
+ };
8
+ class n extends h {
9
+ constructor() {
10
+ super(), this.name = "", this.disabled = !1, this.required = !1, this._customValidityMessage = "", this._valid = !0, typeof this.attachInternals == "function" && (this.internals = this.attachInternals());
11
+ }
12
+ static {
13
+ this.formAssociated = !0;
14
+ }
15
+ get form() {
16
+ return this.internals?.form ?? this.closest("form");
17
+ }
18
+ get validity() {
19
+ return this.internals?.validity ?? {
20
+ valid: this._valid,
21
+ valueMissing: !this._valid,
22
+ customError: !!this._customValidityMessage,
23
+ badInput: !1,
24
+ patternMismatch: !1,
25
+ rangeOverflow: !1,
26
+ rangeUnderflow: !1,
27
+ stepMismatch: !1,
28
+ tooLong: !1,
29
+ tooShort: !1,
30
+ typeMismatch: !1
31
+ };
32
+ }
33
+ get validationMessage() {
34
+ return this.internals?.validationMessage ?? this._customValidityMessage;
35
+ }
36
+ get willValidate() {
37
+ return this.internals?.willValidate ?? !this.disabled;
38
+ }
39
+ checkValidity() {
40
+ return this.internals?.checkValidity ? this.internals.checkValidity() : this._valid;
41
+ }
42
+ reportValidity() {
43
+ return this.internals?.reportValidity ? this.internals.reportValidity() : this._valid;
44
+ }
45
+ setFormValue(t) {
46
+ this.internals?.setFormValue(t);
47
+ }
48
+ setValidity(t, i, o) {
49
+ if (t) {
50
+ const e = Object.values(t).some(Boolean);
51
+ this._valid = !e, this._customValidityMessage = i || "";
52
+ } else
53
+ this._valid = !0, this._customValidityMessage = "";
54
+ this.internals?.setValidity && this.internals.setValidity(t, i, o);
55
+ }
56
+ formResetCallback() {
57
+ }
58
+ formDisabledCallback(t) {
59
+ this.disabled = t;
60
+ }
61
+ }
62
+ l([
63
+ r({ type: String, reflect: !0 })
64
+ ], n.prototype, "name");
65
+ l([
66
+ r({ type: Boolean, reflect: !0 })
67
+ ], n.prototype, "disabled");
68
+ l([
69
+ r({ type: Boolean, reflect: !0 })
70
+ ], n.prototype, "required");
71
+ export {
72
+ n as M
73
+ };
74
+ //# sourceMappingURL=form-associated-fKbeX_2P.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-associated-fKbeX_2P.js","sources":["../../src/internal/form-associated.ts"],"sourcesContent":["import { property } from 'lit/decorators.js';\nimport { MdBaseElement } from './base-component.js';\n\n/**\n * Base element class for Form-Associated Custom Elements (FACE).\n * Provides seamless integration with native HTML <form> elements.\n */\nexport class MdFormAssociatedElement extends MdBaseElement {\n static formAssociated = true;\n\n protected internals?: ElementInternals;\n\n @property({ type: String, reflect: true })\n name = '';\n\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n @property({ type: Boolean, reflect: true })\n required = false;\n\n private _customValidityMessage = '';\n private _valid = true;\n\n constructor() {\n super();\n if (typeof this.attachInternals === 'function') {\n this.internals = this.attachInternals();\n }\n }\n\n get form(): HTMLFormElement | null {\n return this.internals?.form ?? (this.closest('form') as HTMLFormElement | null);\n }\n\n get validity(): ValidityState {\n return this.internals?.validity ?? ({\n valid: this._valid,\n valueMissing: !this._valid,\n customError: Boolean(this._customValidityMessage),\n badInput: false,\n patternMismatch: false,\n rangeOverflow: false,\n rangeUnderflow: false,\n stepMismatch: false,\n tooLong: false,\n tooShort: false,\n typeMismatch: false,\n } as ValidityState);\n }\n\n get validationMessage(): string {\n return this.internals?.validationMessage ?? this._customValidityMessage;\n }\n\n get willValidate(): boolean {\n return this.internals?.willValidate ?? !this.disabled;\n }\n\n checkValidity(): boolean {\n if (this.internals?.checkValidity) {\n return this.internals.checkValidity();\n }\n return this._valid;\n }\n\n reportValidity(): boolean {\n if (this.internals?.reportValidity) {\n return this.internals.reportValidity();\n }\n return this._valid;\n }\n\n protected setFormValue(value: string | File | FormData | null): void {\n this.internals?.setFormValue(value);\n }\n\n protected setValidity(\n flags?: ValidityStateFlags,\n message?: string,\n anchor?: HTMLElement\n ): void {\n if (flags) {\n const hasErrors = Object.values(flags).some(Boolean);\n this._valid = !hasErrors;\n this._customValidityMessage = message || '';\n } else {\n this._valid = true;\n this._customValidityMessage = '';\n }\n\n if (this.internals?.setValidity) {\n this.internals.setValidity(flags, message, anchor);\n }\n }\n\n formResetCallback(): void {\n // Override in child class to reset internal values\n }\n\n formDisabledCallback(disabled: boolean): void {\n this.disabled = disabled;\n }\n}\n\n"],"names":["MdFormAssociatedElement","MdBaseElement","value","flags","message","anchor","hasErrors","disabled","__decorateClass","property"],"mappings":";;;;;;;AAOO,MAAMA,UAAgCC,EAAc;AAAA,EAiBzD,cAAc;AACZ,UAAA,GAZF,KAAA,OAAO,IAGP,KAAA,WAAW,IAGX,KAAA,WAAW,IAEX,KAAQ,yBAAyB,IACjC,KAAQ,SAAS,IAIX,OAAO,KAAK,mBAAoB,eAClC,KAAK,YAAY,KAAK,gBAAA;AAAA,EAE1B;AAAA,EArBA,OAAA;AAAA,SAAO,iBAAiB;AAAA,EAAA;AAAA,EAuBxB,IAAI,OAA+B;AACjC,WAAO,KAAK,WAAW,QAAS,KAAK,QAAQ,MAAM;AAAA,EACrD;AAAA,EAEA,IAAI,WAA0B;AAC5B,WAAO,KAAK,WAAW,YAAa;AAAA,MAClC,OAAO,KAAK;AAAA,MACZ,cAAc,CAAC,KAAK;AAAA,MACpB,aAAa,EAAQ,KAAK;AAAA,MAC1B,UAAU;AAAA,MACV,iBAAiB;AAAA,MACjB,eAAe;AAAA,MACf,gBAAgB;AAAA,MAChB,cAAc;AAAA,MACd,SAAS;AAAA,MACT,UAAU;AAAA,MACV,cAAc;AAAA,IAAA;AAAA,EAElB;AAAA,EAEA,IAAI,oBAA4B;AAC9B,WAAO,KAAK,WAAW,qBAAqB,KAAK;AAAA,EACnD;AAAA,EAEA,IAAI,eAAwB;AAC1B,WAAO,KAAK,WAAW,gBAAgB,CAAC,KAAK;AAAA,EAC/C;AAAA,EAEA,gBAAyB;AACvB,WAAI,KAAK,WAAW,gBACX,KAAK,UAAU,cAAA,IAEjB,KAAK;AAAA,EACd;AAAA,EAEA,iBAA0B;AACxB,WAAI,KAAK,WAAW,iBACX,KAAK,UAAU,eAAA,IAEjB,KAAK;AAAA,EACd;AAAA,EAEU,aAAaC,GAA8C;AACnE,SAAK,WAAW,aAAaA,CAAK;AAAA,EACpC;AAAA,EAEU,YACRC,GACAC,GACAC,GACM;AACN,QAAIF,GAAO;AACT,YAAMG,IAAY,OAAO,OAAOH,CAAK,EAAE,KAAK,OAAO;AACnD,WAAK,SAAS,CAACG,GACf,KAAK,yBAAyBF,KAAW;AAAA,IAC3C;AACE,WAAK,SAAS,IACd,KAAK,yBAAyB;AAGhC,IAAI,KAAK,WAAW,eAClB,KAAK,UAAU,YAAYD,GAAOC,GAASC,CAAM;AAAA,EAErD;AAAA,EAEA,oBAA0B;AAAA,EAE1B;AAAA,EAEA,qBAAqBE,GAAyB;AAC5C,SAAK,WAAWA;AAAA,EAClB;AACF;AA1FEC,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,QAAQ,SAAS,IAAM;AAAA,GAL9BT,EAMX,WAAA,MAAA;AAGAQ,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,SAAS,SAAS,IAAM;AAAA,GAR/BT,EASX,WAAA,UAAA;AAGAQ,EAAA;AAAA,EADCC,EAAS,EAAE,MAAM,SAAS,SAAS,IAAM;AAAA,GAX/BT,EAYX,WAAA,UAAA;"}
@@ -0,0 +1,263 @@
1
+ import { css as r } from "lit";
2
+ const e = {
3
+ primary: "#6750A4",
4
+ onPrimary: "#FFFFFF",
5
+ primaryContainer: "#EADDFF",
6
+ onPrimaryContainer: "#21005D",
7
+ secondary: "#625B71",
8
+ onSecondary: "#FFFFFF",
9
+ secondaryContainer: "#E8DEF8",
10
+ onSecondaryContainer: "#1D192B",
11
+ tertiary: "#7D5260",
12
+ onTertiary: "#FFFFFF",
13
+ tertiaryContainer: "#FFD8E4",
14
+ onTertiaryContainer: "#31111D",
15
+ error: "#B3261E",
16
+ onError: "#FFFFFF",
17
+ errorContainer: "#F9DEDC",
18
+ onErrorContainer: "#410E0B",
19
+ background: "#FEF7FF",
20
+ onBackground: "#1D1B20",
21
+ surface: "#FEF7FF",
22
+ onSurface: "#1D1B20",
23
+ surfaceVariant: "#E7E0EC",
24
+ onSurfaceVariant: "#49454F",
25
+ outline: "#79747E",
26
+ outlineVariant: "#CAC4D0",
27
+ shadow: "#000000",
28
+ scrim: "#000000",
29
+ inverseSurface: "#313033",
30
+ inverseOnSurface: "#F4EFF4",
31
+ inversePrimary: "#D0BCFF",
32
+ surfaceDim: "#DED8E1",
33
+ surfaceBright: "#FEF7FF",
34
+ surfaceContainerLowest: "#FFFFFF",
35
+ surfaceContainerLow: "#F7F2FA",
36
+ surfaceContainer: "#F3EDF7",
37
+ surfaceContainerHigh: "#ECE6F0",
38
+ surfaceContainerHighest: "#E6E0E9"
39
+ }, o = {
40
+ primary: "#D0BCFF",
41
+ onPrimary: "#381E72",
42
+ primaryContainer: "#4F378B",
43
+ onPrimaryContainer: "#EADDFF",
44
+ secondary: "#CCC2DC",
45
+ onSecondary: "#332D41",
46
+ secondaryContainer: "#4A4458",
47
+ onSecondaryContainer: "#E8DEF8",
48
+ tertiary: "#EFB8C8",
49
+ onTertiary: "#492532",
50
+ tertiaryContainer: "#633B48",
51
+ onTertiaryContainer: "#FFD8E4",
52
+ error: "#F2B8B5",
53
+ onError: "#601410",
54
+ errorContainer: "#8C1D18",
55
+ onErrorContainer: "#F9DEDC",
56
+ background: "#141218",
57
+ onBackground: "#E6E0E9",
58
+ surface: "#141218",
59
+ onSurface: "#E6E0E9",
60
+ surfaceVariant: "#49454F",
61
+ onSurfaceVariant: "#CAC4D0",
62
+ outline: "#938F99",
63
+ outlineVariant: "#49454F",
64
+ shadow: "#000000",
65
+ scrim: "#000000",
66
+ inverseSurface: "#E6E0E9",
67
+ inverseOnSurface: "#313033",
68
+ inversePrimary: "#6750A4",
69
+ surfaceDim: "#141218",
70
+ surfaceBright: "#3B383E",
71
+ surfaceContainerLowest: "#0F0D13",
72
+ surfaceContainerLow: "#1D1B20",
73
+ surfaceContainer: "#211F26",
74
+ surfaceContainerHigh: "#2B2930",
75
+ surfaceContainerHighest: "#36343B"
76
+ };
77
+ function p(l) {
78
+ const i = {};
79
+ for (const [y, t] of Object.entries(l)) {
80
+ const d = y.replace(/([A-Z])/g, "-$1").toLowerCase();
81
+ i[`--md-sys-color-${d}`] = t;
82
+ }
83
+ return i;
84
+ }
85
+ const n = {
86
+ fontFamily: "'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif",
87
+ displayLarge: { size: "57px", lineHeight: "64px", letterSpacing: "-0.25px", weight: 400 },
88
+ displayMedium: { size: "45px", lineHeight: "52px", letterSpacing: "0px", weight: 400 },
89
+ displaySmall: { size: "36px", lineHeight: "44px", letterSpacing: "0px", weight: 400 },
90
+ headlineLarge: { size: "32px", lineHeight: "40px", letterSpacing: "0px", weight: 400 },
91
+ headlineMedium: { size: "28px", lineHeight: "36px", letterSpacing: "0px", weight: 400 },
92
+ headlineSmall: { size: "24px", lineHeight: "32px", letterSpacing: "0px", weight: 400 },
93
+ titleLarge: { size: "22px", lineHeight: "28px", letterSpacing: "0px", weight: 400 },
94
+ titleMedium: { size: "16px", lineHeight: "24px", letterSpacing: "0.15px", weight: 500 },
95
+ titleSmall: { size: "14px", lineHeight: "20px", letterSpacing: "0.1px", weight: 500 },
96
+ bodyLarge: { size: "16px", lineHeight: "24px", letterSpacing: "0.5px", weight: 400 },
97
+ bodyMedium: { size: "14px", lineHeight: "20px", letterSpacing: "0.25px", weight: 400 },
98
+ bodySmall: { size: "12px", lineHeight: "16px", letterSpacing: "0.4px", weight: 400 },
99
+ labelLarge: { size: "14px", lineHeight: "20px", letterSpacing: "0.1px", weight: 500 },
100
+ labelMedium: { size: "12px", lineHeight: "16px", letterSpacing: "0.5px", weight: 500 },
101
+ labelSmall: { size: "11px", lineHeight: "16px", letterSpacing: "0.5px", weight: 500 }
102
+ }, s = {
103
+ level0: "none",
104
+ level1: "0px 1px 3px 1px rgba(0, 0, 0, 0.15), 0px 1px 2px 0px rgba(0, 0, 0, 0.30)",
105
+ level2: "0px 2px 6px 2px rgba(0, 0, 0, 0.15), 0px 1px 2px 0px rgba(0, 0, 0, 0.30)",
106
+ level3: "0px 1px 3px 0px rgba(0, 0, 0, 0.30), 0px 4px 8px 3px rgba(0, 0, 0, 0.15)",
107
+ level4: "0px 2px 3px 0px rgba(0, 0, 0, 0.30), 0px 6px 10px 4px rgba(0, 0, 0, 0.15)",
108
+ level5: "0px 4px 4px 0px rgba(0, 0, 0, 0.30), 0px 8px 12px 6px rgba(0, 0, 0, 0.15)"
109
+ }, a = {
110
+ cornerNone: "0px",
111
+ cornerExtraSmall: "4px",
112
+ cornerSmall: "8px",
113
+ cornerMedium: "12px",
114
+ cornerLarge: "16px",
115
+ cornerExtraLarge: "28px",
116
+ cornerFull: "9999px"
117
+ }, c = {
118
+ easingStandard: "cubic-bezier(0.2, 0, 0, 1)",
119
+ easingStandardDecelerate: "cubic-bezier(0, 0, 0, 1)",
120
+ easingStandardAccelerate: "cubic-bezier(0.3, 0, 1, 1)",
121
+ easingEmphasized: "cubic-bezier(0.2, 0, 0, 1)",
122
+ easingEmphasizedDecelerate: "cubic-bezier(0.05, 0.7, 0.1, 1)",
123
+ easingEmphasizedAccelerate: "cubic-bezier(0.3, 0, 0.8, 0.15)",
124
+ durationShort1: "50ms",
125
+ durationShort2: "100ms",
126
+ durationShort3: "150ms",
127
+ durationShort4: "200ms",
128
+ durationMedium1: "250ms",
129
+ durationMedium2: "300ms",
130
+ durationMedium3: "350ms",
131
+ durationMedium4: "400ms",
132
+ durationLong1: "450ms",
133
+ durationLong2: "500ms",
134
+ durationLong3: "550ms",
135
+ durationLong4: "600ms"
136
+ }, u = r`
137
+ :root, :host {
138
+ /* Color Tokens - Default Light */
139
+ --md-sys-color-primary: ${r([e.primary])};
140
+ --md-sys-color-on-primary: ${r([e.onPrimary])};
141
+ --md-sys-color-primary-container: ${r([e.primaryContainer])};
142
+ --md-sys-color-on-primary-container: ${r([e.onPrimaryContainer])};
143
+ --md-sys-color-secondary: ${r([e.secondary])};
144
+ --md-sys-color-on-secondary: ${r([e.onSecondary])};
145
+ --md-sys-color-secondary-container: ${r([e.secondaryContainer])};
146
+ --md-sys-color-on-secondary-container: ${r([e.onSecondaryContainer])};
147
+ --md-sys-color-tertiary: ${r([e.tertiary])};
148
+ --md-sys-color-on-tertiary: ${r([e.onTertiary])};
149
+ --md-sys-color-tertiary-container: ${r([e.tertiaryContainer])};
150
+ --md-sys-color-on-tertiary-container: ${r([e.onTertiaryContainer])};
151
+ --md-sys-color-error: ${r([e.error])};
152
+ --md-sys-color-on-error: ${r([e.onError])};
153
+ --md-sys-color-error-container: ${r([e.errorContainer])};
154
+ --md-sys-color-on-error-container: ${r([e.onErrorContainer])};
155
+ --md-sys-color-background: ${r([e.background])};
156
+ --md-sys-color-on-background: ${r([e.onBackground])};
157
+ --md-sys-color-surface: ${r([e.surface])};
158
+ --md-sys-color-on-surface: ${r([e.onSurface])};
159
+ --md-sys-color-surface-variant: ${r([e.surfaceVariant])};
160
+ --md-sys-color-on-surface-variant: ${r([e.onSurfaceVariant])};
161
+ --md-sys-color-outline: ${r([e.outline])};
162
+ --md-sys-color-outline-variant: ${r([e.outlineVariant])};
163
+ --md-sys-color-surface-container-lowest: ${r([e.surfaceContainerLowest])};
164
+ --md-sys-color-surface-container-low: ${r([e.surfaceContainerLow])};
165
+ --md-sys-color-surface-container: ${r([e.surfaceContainer])};
166
+ --md-sys-color-surface-container-high: ${r([e.surfaceContainerHigh])};
167
+ --md-sys-color-surface-container-highest: ${r([e.surfaceContainerHighest])};
168
+ --md-sys-color-inverse-surface: ${r([e.inverseSurface])};
169
+ --md-sys-color-inverse-on-surface: ${r([e.inverseOnSurface])};
170
+ --md-sys-color-inverse-primary: ${r([e.inversePrimary])};
171
+
172
+ /* Typography */
173
+ --md-sys-typescale-font-family: ${r([n.fontFamily])};
174
+ --md-sys-typescale-body-large-size: ${r([n.bodyLarge.size])};
175
+ --md-sys-typescale-body-large-line-height: ${r([n.bodyLarge.lineHeight])};
176
+ --md-sys-typescale-body-medium-size: ${r([n.bodyMedium.size])};
177
+ --md-sys-typescale-label-large-size: ${r([n.labelLarge.size])};
178
+ --md-sys-typescale-title-medium-size: ${r([n.titleMedium.size])};
179
+
180
+ /* Elevation */
181
+ --md-sys-elevation-level0: ${r([s.level0])};
182
+ --md-sys-elevation-level1: ${r([s.level1])};
183
+ --md-sys-elevation-level2: ${r([s.level2])};
184
+ --md-sys-elevation-level3: ${r([s.level3])};
185
+ --md-sys-elevation-level4: ${r([s.level4])};
186
+ --md-sys-elevation-level5: ${r([s.level5])};
187
+
188
+ /* Shape */
189
+ --md-sys-shape-corner-none: ${r([a.cornerNone])};
190
+ --md-sys-shape-corner-extra-small: ${r([a.cornerExtraSmall])};
191
+ --md-sys-shape-corner-small: ${r([a.cornerSmall])};
192
+ --md-sys-shape-corner-medium: ${r([a.cornerMedium])};
193
+ --md-sys-shape-corner-large: ${r([a.cornerLarge])};
194
+ --md-sys-shape-corner-extra-large: ${r([a.cornerExtraLarge])};
195
+ --md-sys-shape-corner-full: ${r([a.cornerFull])};
196
+
197
+ /* Motion */
198
+ --md-sys-motion-easing-standard: ${r([c.easingStandard])};
199
+ --md-sys-motion-duration-short: ${r([c.durationShort2])};
200
+ --md-sys-motion-duration-medium: ${r([c.durationMedium2])};
201
+ --md-sys-motion-duration-long: ${r([c.durationLong2])};
202
+
203
+ /* State Layer Opacities */
204
+ --md-sys-state-hover-opacity: 0.08;
205
+ --md-sys-state-focus-opacity: 0.12;
206
+ --md-sys-state-pressed-opacity: 0.12;
207
+ --md-sys-state-dragged-opacity: 0.16;
208
+ }
209
+
210
+ [data-theme='dark'] {
211
+ --md-sys-color-primary: ${r([o.primary])};
212
+ --md-sys-color-on-primary: ${r([o.onPrimary])};
213
+ --md-sys-color-primary-container: ${r([o.primaryContainer])};
214
+ --md-sys-color-on-primary-container: ${r([o.onPrimaryContainer])};
215
+ --md-sys-color-secondary: ${r([o.secondary])};
216
+ --md-sys-color-on-secondary: ${r([o.onSecondary])};
217
+ --md-sys-color-secondary-container: ${r([o.secondaryContainer])};
218
+ --md-sys-color-on-secondary-container: ${r([o.onSecondaryContainer])};
219
+ --md-sys-color-tertiary: ${r([o.tertiary])};
220
+ --md-sys-color-on-tertiary: ${r([o.onTertiary])};
221
+ --md-sys-color-tertiary-container: ${r([o.tertiaryContainer])};
222
+ --md-sys-color-on-tertiary-container: ${r([o.onTertiaryContainer])};
223
+ --md-sys-color-error: ${r([o.error])};
224
+ --md-sys-color-on-error: ${r([o.onError])};
225
+ --md-sys-color-error-container: ${r([o.errorContainer])};
226
+ --md-sys-color-on-error-container: ${r([o.onErrorContainer])};
227
+ --md-sys-color-background: ${r([o.background])};
228
+ --md-sys-color-on-background: ${r([o.onBackground])};
229
+ --md-sys-color-surface: ${r([o.surface])};
230
+ --md-sys-color-on-surface: ${r([o.onSurface])};
231
+ --md-sys-color-surface-variant: ${r([o.surfaceVariant])};
232
+ --md-sys-color-on-surface-variant: ${r([o.onSurfaceVariant])};
233
+ --md-sys-color-outline: ${r([o.outline])};
234
+ --md-sys-color-outline-variant: ${r([o.outlineVariant])};
235
+ --md-sys-color-surface-container-lowest: ${r([o.surfaceContainerLowest])};
236
+ --md-sys-color-surface-container-low: ${r([o.surfaceContainerLow])};
237
+ --md-sys-color-surface-container: ${r([o.surfaceContainer])};
238
+ --md-sys-color-surface-container-high: ${r([o.surfaceContainerHigh])};
239
+ --md-sys-color-surface-container-highest: ${r([o.surfaceContainerHighest])};
240
+ --md-sys-color-inverse-surface: ${r([o.inverseSurface])};
241
+ --md-sys-color-inverse-on-surface: ${r([o.inverseOnSurface])};
242
+ --md-sys-color-inverse-primary: ${r([o.inversePrimary])};
243
+ }
244
+ `;
245
+ function g(l, i = document.documentElement) {
246
+ for (const [y, t] of Object.entries(l))
247
+ if (t) {
248
+ const d = y.replace(/([A-Z])/g, "-$1").toLowerCase();
249
+ i.style.setProperty(`--md-sys-color-${d}`, t);
250
+ }
251
+ }
252
+ export {
253
+ g as a,
254
+ n as b,
255
+ p as c,
256
+ o as d,
257
+ s as e,
258
+ e as l,
259
+ c as m,
260
+ a as s,
261
+ u as t
262
+ };
263
+ //# sourceMappingURL=theme.css-DV3DRha-.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.css-DV3DRha-.js","sources":["../../src/tokens/colors.ts","../../src/tokens/typography.ts","../../src/tokens/elevation.ts","../../src/tokens/shape.ts","../../src/tokens/motion.ts","../../src/tokens/theme.css.ts"],"sourcesContent":["export interface M3ColorScheme {\n primary: string;\n onPrimary: string;\n primaryContainer: string;\n onPrimaryContainer: string;\n secondary: string;\n onSecondary: string;\n secondaryContainer: string;\n onSecondaryContainer: string;\n tertiary: string;\n onTertiary: string;\n tertiaryContainer: string;\n onTertiaryContainer: string;\n error: string;\n onError: string;\n errorContainer: string;\n onErrorContainer: string;\n background: string;\n onBackground: string;\n surface: string;\n onSurface: string;\n surfaceVariant: string;\n onSurfaceVariant: string;\n outline: string;\n outlineVariant: string;\n shadow: string;\n scrim: string;\n inverseSurface: string;\n inverseOnSurface: string;\n inversePrimary: string;\n surfaceDim: string;\n surfaceBright: string;\n surfaceContainerLowest: string;\n surfaceContainerLow: string;\n surfaceContainer: string;\n surfaceContainerHigh: string;\n surfaceContainerHighest: string;\n}\n\nexport const lightColorScheme: M3ColorScheme = {\n primary: '#6750A4',\n onPrimary: '#FFFFFF',\n primaryContainer: '#EADDFF',\n onPrimaryContainer: '#21005D',\n secondary: '#625B71',\n onSecondary: '#FFFFFF',\n secondaryContainer: '#E8DEF8',\n onSecondaryContainer: '#1D192B',\n tertiary: '#7D5260',\n onTertiary: '#FFFFFF',\n tertiaryContainer: '#FFD8E4',\n onTertiaryContainer: '#31111D',\n error: '#B3261E',\n onError: '#FFFFFF',\n errorContainer: '#F9DEDC',\n onErrorContainer: '#410E0B',\n background: '#FEF7FF',\n onBackground: '#1D1B20',\n surface: '#FEF7FF',\n onSurface: '#1D1B20',\n surfaceVariant: '#E7E0EC',\n onSurfaceVariant: '#49454F',\n outline: '#79747E',\n outlineVariant: '#CAC4D0',\n shadow: '#000000',\n scrim: '#000000',\n inverseSurface: '#313033',\n inverseOnSurface: '#F4EFF4',\n inversePrimary: '#D0BCFF',\n surfaceDim: '#DED8E1',\n surfaceBright: '#FEF7FF',\n surfaceContainerLowest: '#FFFFFF',\n surfaceContainerLow: '#F7F2FA',\n surfaceContainer: '#F3EDF7',\n surfaceContainerHigh: '#ECE6F0',\n surfaceContainerHighest: '#E6E0E9',\n};\n\nexport const darkColorScheme: M3ColorScheme = {\n primary: '#D0BCFF',\n onPrimary: '#381E72',\n primaryContainer: '#4F378B',\n onPrimaryContainer: '#EADDFF',\n secondary: '#CCC2DC',\n onSecondary: '#332D41',\n secondaryContainer: '#4A4458',\n onSecondaryContainer: '#E8DEF8',\n tertiary: '#EFB8C8',\n onTertiary: '#492532',\n tertiaryContainer: '#633B48',\n onTertiaryContainer: '#FFD8E4',\n error: '#F2B8B5',\n onError: '#601410',\n errorContainer: '#8C1D18',\n onErrorContainer: '#F9DEDC',\n background: '#141218',\n onBackground: '#E6E0E9',\n surface: '#141218',\n onSurface: '#E6E0E9',\n surfaceVariant: '#49454F',\n onSurfaceVariant: '#CAC4D0',\n outline: '#938F99',\n outlineVariant: '#49454F',\n shadow: '#000000',\n scrim: '#000000',\n inverseSurface: '#E6E0E9',\n inverseOnSurface: '#313033',\n inversePrimary: '#6750A4',\n surfaceDim: '#141218',\n surfaceBright: '#3B383E',\n surfaceContainerLowest: '#0F0D13',\n surfaceContainerLow: '#1D1B20',\n surfaceContainer: '#211F26',\n surfaceContainerHigh: '#2B2930',\n surfaceContainerHighest: '#36343B',\n};\n\nexport function colorSchemeToCssVariables(scheme: Partial<M3ColorScheme>): Record<string, string> {\n const vars: Record<string, string> = {};\n for (const [key, value] of Object.entries(scheme)) {\n const kebab = key.replace(/([A-Z])/g, '-$1').toLowerCase();\n vars[`--md-sys-color-${kebab}`] = value;\n }\n return vars;\n}\n\n","export interface M3TypographyStyle {\n fontFamily: string;\n weight: number | string;\n size: string;\n lineHeight: string;\n letterSpacing: string;\n}\n\nexport const typographyTokens = {\n fontFamily: \"'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif\",\n displayLarge: { size: '57px', lineHeight: '64px', letterSpacing: '-0.25px', weight: 400 },\n displayMedium: { size: '45px', lineHeight: '52px', letterSpacing: '0px', weight: 400 },\n displaySmall: { size: '36px', lineHeight: '44px', letterSpacing: '0px', weight: 400 },\n headlineLarge: { size: '32px', lineHeight: '40px', letterSpacing: '0px', weight: 400 },\n headlineMedium: { size: '28px', lineHeight: '36px', letterSpacing: '0px', weight: 400 },\n headlineSmall: { size: '24px', lineHeight: '32px', letterSpacing: '0px', weight: 400 },\n titleLarge: { size: '22px', lineHeight: '28px', letterSpacing: '0px', weight: 400 },\n titleMedium: { size: '16px', lineHeight: '24px', letterSpacing: '0.15px', weight: 500 },\n titleSmall: { size: '14px', lineHeight: '20px', letterSpacing: '0.1px', weight: 500 },\n bodyLarge: { size: '16px', lineHeight: '24px', letterSpacing: '0.5px', weight: 400 },\n bodyMedium: { size: '14px', lineHeight: '20px', letterSpacing: '0.25px', weight: 400 },\n bodySmall: { size: '12px', lineHeight: '16px', letterSpacing: '0.4px', weight: 400 },\n labelLarge: { size: '14px', lineHeight: '20px', letterSpacing: '0.1px', weight: 500 },\n labelMedium: { size: '12px', lineHeight: '16px', letterSpacing: '0.5px', weight: 500 },\n labelSmall: { size: '11px', lineHeight: '16px', letterSpacing: '0.5px', weight: 500 },\n};\n\n","export const elevationTokens = {\n level0: 'none',\n level1: '0px 1px 3px 1px rgba(0, 0, 0, 0.15), 0px 1px 2px 0px rgba(0, 0, 0, 0.30)',\n level2: '0px 2px 6px 2px rgba(0, 0, 0, 0.15), 0px 1px 2px 0px rgba(0, 0, 0, 0.30)',\n level3: '0px 1px 3px 0px rgba(0, 0, 0, 0.30), 0px 4px 8px 3px rgba(0, 0, 0, 0.15)',\n level4: '0px 2px 3px 0px rgba(0, 0, 0, 0.30), 0px 6px 10px 4px rgba(0, 0, 0, 0.15)',\n level5: '0px 4px 4px 0px rgba(0, 0, 0, 0.30), 0px 8px 12px 6px rgba(0, 0, 0, 0.15)',\n};\n\n","export const shapeTokens = {\n cornerNone: '0px',\n cornerExtraSmall: '4px',\n cornerSmall: '8px',\n cornerMedium: '12px',\n cornerLarge: '16px',\n cornerExtraLarge: '28px',\n cornerFull: '9999px',\n};\n\n","export const motionTokens = {\n easingStandard: 'cubic-bezier(0.2, 0, 0, 1)',\n easingStandardDecelerate: 'cubic-bezier(0, 0, 0, 1)',\n easingStandardAccelerate: 'cubic-bezier(0.3, 0, 1, 1)',\n easingEmphasized: 'cubic-bezier(0.2, 0, 0, 1)',\n easingEmphasizedDecelerate: 'cubic-bezier(0.05, 0.7, 0.1, 1)',\n easingEmphasizedAccelerate: 'cubic-bezier(0.3, 0, 0.8, 0.15)',\n \n durationShort1: '50ms',\n durationShort2: '100ms',\n durationShort3: '150ms',\n durationShort4: '200ms',\n durationMedium1: '250ms',\n durationMedium2: '300ms',\n durationMedium3: '350ms',\n durationMedium4: '400ms',\n durationLong1: '450ms',\n durationLong2: '500ms',\n durationLong3: '550ms',\n durationLong4: '600ms',\n};\n\n","import { css } from 'lit';\nimport { lightColorScheme, darkColorScheme, M3ColorScheme } from './colors.js';\nimport { typographyTokens } from './typography.js';\nimport { elevationTokens } from './elevation.js';\nimport { shapeTokens } from './shape.js';\nimport { motionTokens } from './motion.js';\n\nexport const themeStyles = css`\n :root, :host {\n /* Color Tokens - Default Light */\n --md-sys-color-primary: ${css([lightColorScheme.primary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary: ${css([lightColorScheme.onPrimary] as unknown as TemplateStringsArray)};\n --md-sys-color-primary-container: ${css([lightColorScheme.primaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary-container: ${css([lightColorScheme.onPrimaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary: ${css([lightColorScheme.secondary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary: ${css([lightColorScheme.onSecondary] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary-container: ${css([lightColorScheme.secondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary-container: ${css([lightColorScheme.onSecondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary: ${css([lightColorScheme.tertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary: ${css([lightColorScheme.onTertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary-container: ${css([lightColorScheme.tertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary-container: ${css([lightColorScheme.onTertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-error: ${css([lightColorScheme.error] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error: ${css([lightColorScheme.onError] as unknown as TemplateStringsArray)};\n --md-sys-color-error-container: ${css([lightColorScheme.errorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error-container: ${css([lightColorScheme.onErrorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-background: ${css([lightColorScheme.background] as unknown as TemplateStringsArray)};\n --md-sys-color-on-background: ${css([lightColorScheme.onBackground] as unknown as TemplateStringsArray)};\n --md-sys-color-surface: ${css([lightColorScheme.surface] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface: ${css([lightColorScheme.onSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-variant: ${css([lightColorScheme.surfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface-variant: ${css([lightColorScheme.onSurfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-outline: ${css([lightColorScheme.outline] as unknown as TemplateStringsArray)};\n --md-sys-color-outline-variant: ${css([lightColorScheme.outlineVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-lowest: ${css([lightColorScheme.surfaceContainerLowest] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-low: ${css([lightColorScheme.surfaceContainerLow] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container: ${css([lightColorScheme.surfaceContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-high: ${css([lightColorScheme.surfaceContainerHigh] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-highest: ${css([lightColorScheme.surfaceContainerHighest] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-surface: ${css([lightColorScheme.inverseSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-on-surface: ${css([lightColorScheme.inverseOnSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-primary: ${css([lightColorScheme.inversePrimary] as unknown as TemplateStringsArray)};\n\n /* Typography */\n --md-sys-typescale-font-family: ${css([typographyTokens.fontFamily] as unknown as TemplateStringsArray)};\n --md-sys-typescale-body-large-size: ${css([typographyTokens.bodyLarge.size] as unknown as TemplateStringsArray)};\n --md-sys-typescale-body-large-line-height: ${css([typographyTokens.bodyLarge.lineHeight] as unknown as TemplateStringsArray)};\n --md-sys-typescale-body-medium-size: ${css([typographyTokens.bodyMedium.size] as unknown as TemplateStringsArray)};\n --md-sys-typescale-label-large-size: ${css([typographyTokens.labelLarge.size] as unknown as TemplateStringsArray)};\n --md-sys-typescale-title-medium-size: ${css([typographyTokens.titleMedium.size] as unknown as TemplateStringsArray)};\n\n /* Elevation */\n --md-sys-elevation-level0: ${css([elevationTokens.level0] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level1: ${css([elevationTokens.level1] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level2: ${css([elevationTokens.level2] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level3: ${css([elevationTokens.level3] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level4: ${css([elevationTokens.level4] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level5: ${css([elevationTokens.level5] as unknown as TemplateStringsArray)};\n\n /* Shape */\n --md-sys-shape-corner-none: ${css([shapeTokens.cornerNone] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-extra-small: ${css([shapeTokens.cornerExtraSmall] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-small: ${css([shapeTokens.cornerSmall] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-medium: ${css([shapeTokens.cornerMedium] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-large: ${css([shapeTokens.cornerLarge] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-extra-large: ${css([shapeTokens.cornerExtraLarge] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-full: ${css([shapeTokens.cornerFull] as unknown as TemplateStringsArray)};\n\n /* Motion */\n --md-sys-motion-easing-standard: ${css([motionTokens.easingStandard] as unknown as TemplateStringsArray)};\n --md-sys-motion-duration-short: ${css([motionTokens.durationShort2] as unknown as TemplateStringsArray)};\n --md-sys-motion-duration-medium: ${css([motionTokens.durationMedium2] as unknown as TemplateStringsArray)};\n --md-sys-motion-duration-long: ${css([motionTokens.durationLong2] as unknown as TemplateStringsArray)};\n\n /* State Layer Opacities */\n --md-sys-state-hover-opacity: 0.08;\n --md-sys-state-focus-opacity: 0.12;\n --md-sys-state-pressed-opacity: 0.12;\n --md-sys-state-dragged-opacity: 0.16;\n }\n\n [data-theme='dark'] {\n --md-sys-color-primary: ${css([darkColorScheme.primary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary: ${css([darkColorScheme.onPrimary] as unknown as TemplateStringsArray)};\n --md-sys-color-primary-container: ${css([darkColorScheme.primaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary-container: ${css([darkColorScheme.onPrimaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary: ${css([darkColorScheme.secondary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary: ${css([darkColorScheme.onSecondary] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary-container: ${css([darkColorScheme.secondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary-container: ${css([darkColorScheme.onSecondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary: ${css([darkColorScheme.tertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary: ${css([darkColorScheme.onTertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary-container: ${css([darkColorScheme.tertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary-container: ${css([darkColorScheme.onTertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-error: ${css([darkColorScheme.error] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error: ${css([darkColorScheme.onError] as unknown as TemplateStringsArray)};\n --md-sys-color-error-container: ${css([darkColorScheme.errorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error-container: ${css([darkColorScheme.onErrorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-background: ${css([darkColorScheme.background] as unknown as TemplateStringsArray)};\n --md-sys-color-on-background: ${css([darkColorScheme.onBackground] as unknown as TemplateStringsArray)};\n --md-sys-color-surface: ${css([darkColorScheme.surface] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface: ${css([darkColorScheme.onSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-variant: ${css([darkColorScheme.surfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface-variant: ${css([darkColorScheme.onSurfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-outline: ${css([darkColorScheme.outline] as unknown as TemplateStringsArray)};\n --md-sys-color-outline-variant: ${css([darkColorScheme.outlineVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-lowest: ${css([darkColorScheme.surfaceContainerLowest] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-low: ${css([darkColorScheme.surfaceContainerLow] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container: ${css([darkColorScheme.surfaceContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-high: ${css([darkColorScheme.surfaceContainerHigh] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-highest: ${css([darkColorScheme.surfaceContainerHighest] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-surface: ${css([darkColorScheme.inverseSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-on-surface: ${css([darkColorScheme.inverseOnSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-primary: ${css([darkColorScheme.inversePrimary] as unknown as TemplateStringsArray)};\n }\n`;\n\nexport function applyTheme(\n theme: Partial<M3ColorScheme>,\n target: HTMLElement = document.documentElement\n): void {\n for (const [key, value] of Object.entries(theme)) {\n if (value) {\n const kebab = key.replace(/([A-Z])/g, '-$1').toLowerCase();\n target.style.setProperty(`--md-sys-color-${kebab}`, value);\n }\n }\n}\n\n"],"names":["lightColorScheme","darkColorScheme","colorSchemeToCssVariables","scheme","vars","key","value","kebab","typographyTokens","elevationTokens","shapeTokens","motionTokens","themeStyles","css","applyTheme","theme","target"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const badgeStyles: import('lit').CSSResult;
2
+ //# sourceMappingURL=badge.css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"badge.css.d.ts","sourceRoot":"","sources":["../../../src/components/badge/badge.css.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,yBAiDvB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { MdBaseElement } from '../../internal/base-component.js';
2
+ export declare class MdBadge extends MdBaseElement {
3
+ static styles: import('lit').CSSResultGroup[];
4
+ value: string;
5
+ dot: boolean;
6
+ anchored: boolean;
7
+ private assignedChildren;
8
+ private handleSlotChange;
9
+ render(): import('lit-html').TemplateResult<1>;
10
+ }
11
+ declare global {
12
+ interface HTMLElementTagNameMap {
13
+ 'md-badge': MdBadge;
14
+ }
15
+ }
16
+ //# sourceMappingURL=badge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../src/components/badge/badge.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAGjE,qBACa,OAAQ,SAAQ,aAAa;IACxC,OAAgB,MAAM,iCAAuC;IAG7D,KAAK,SAAM;IAGX,GAAG,UAAS;IAGZ,QAAQ,UAAS;IAGjB,OAAO,CAAC,gBAAgB,CAAiB;IAEzC,OAAO,CAAC,gBAAgB,CAEtB;IAEO,MAAM;CAQhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,OAAO,CAAC;KACrB;CACF"}
@@ -0,0 +1,93 @@
1
+ import { css as h, nothing as c, html as g } from "lit";
2
+ import { property as l, queryAssignedElements as m, customElement as f } from "lit/decorators.js";
3
+ import { M as p } from "../../chunks/base-component-DQTjlEVL.js";
4
+ const u = h`
5
+ :host {
6
+ display: inline-flex;
7
+ position: relative;
8
+ vertical-align: middle;
9
+ }
10
+
11
+ .badge {
12
+ box-sizing: border-box;
13
+ display: inline-flex;
14
+ align-items: center;
15
+ justify-content: center;
16
+ background-color: var(--md-sys-color-error, #B3261E);
17
+ color: var(--md-sys-color-on-error, #FFFFFF);
18
+ font-family: var(--md-sys-typescale-font-family, inherit);
19
+ font-weight: 500;
20
+ line-height: 1;
21
+ white-space: nowrap;
22
+ user-select: none;
23
+ border-radius: var(--md-sys-shape-corner-full, 9999px);
24
+ transition: transform 150ms cubic-bezier(0.2, 0, 0, 1),
25
+ opacity 150ms cubic-bezier(0.2, 0, 0, 1);
26
+ }
27
+
28
+ /* Small Dot Badge */
29
+ :host(:not([value])) .badge,
30
+ :host([dot]) .badge {
31
+ width: 6px;
32
+ height: 6px;
33
+ padding: 0;
34
+ }
35
+
36
+ /* Large Badge with text */
37
+ :host([value]:not([dot])) .badge {
38
+ min-width: 16px;
39
+ height: 16px;
40
+ padding: 0 4px;
41
+ font-size: 11px;
42
+ letter-spacing: 0.5px;
43
+ }
44
+
45
+ /* Anchored Positioning over slotted element */
46
+ :host([anchored]) .badge {
47
+ position: absolute;
48
+ top: 0;
49
+ right: 0;
50
+ transform: translate(50%, -50%);
51
+ z-index: 10;
52
+ }
53
+ `;
54
+ var y = Object.defineProperty, b = Object.getOwnPropertyDescriptor, o = (d, r, n, s) => {
55
+ for (var e = s > 1 ? void 0 : s ? b(r, n) : r, a = d.length - 1, i; a >= 0; a--)
56
+ (i = d[a]) && (e = (s ? i(r, n, e) : i(e)) || e);
57
+ return s && e && y(r, n, e), e;
58
+ };
59
+ let t = class extends p {
60
+ constructor() {
61
+ super(...arguments), this.value = "", this.dot = !1, this.anchored = !1, this.handleSlotChange = () => {
62
+ this.anchored = this.assignedChildren.length > 0;
63
+ };
64
+ }
65
+ render() {
66
+ return g`
67
+ <slot @slotchange=${this.handleSlotChange}></slot>
68
+ <span class="badge">
69
+ ${!this.dot && this.value ? this.value : c}
70
+ </span>
71
+ `;
72
+ }
73
+ };
74
+ t.styles = [p.styles, u];
75
+ o([
76
+ l({ type: String, reflect: !0 })
77
+ ], t.prototype, "value", 2);
78
+ o([
79
+ l({ type: Boolean, reflect: !0 })
80
+ ], t.prototype, "dot", 2);
81
+ o([
82
+ l({ type: Boolean, reflect: !0 })
83
+ ], t.prototype, "anchored", 2);
84
+ o([
85
+ m()
86
+ ], t.prototype, "assignedChildren", 2);
87
+ t = o([
88
+ f("md-badge")
89
+ ], t);
90
+ export {
91
+ t as MdBadge
92
+ };
93
+ //# sourceMappingURL=badge.js.map