@adobe/spectrum-wc 0.0.2-snapshot-test.20260121133033

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 (47) hide show
  1. package/dist/components/asset/Asset.d.ts +21 -0
  2. package/dist/components/asset/Asset.js +60 -0
  3. package/dist/components/asset/Asset.js.map +1 -0
  4. package/dist/components/asset/asset.css.js +6 -0
  5. package/dist/components/asset/asset.css.js.map +1 -0
  6. package/dist/components/asset/index.d.ts +7 -0
  7. package/dist/components/asset/index.js +7 -0
  8. package/dist/components/asset/index.js.map +1 -0
  9. package/dist/components/badge/Badge.d.ts +47 -0
  10. package/dist/components/badge/Badge.js +70 -0
  11. package/dist/components/badge/Badge.js.map +1 -0
  12. package/dist/components/badge/badge.css.js +6 -0
  13. package/dist/components/badge/badge.css.js.map +1 -0
  14. package/dist/components/badge/index.d.ts +7 -0
  15. package/dist/components/badge/index.js +7 -0
  16. package/dist/components/badge/index.js.map +1 -0
  17. package/dist/components/badge/test/badge.a11y.spec.d.ts +12 -0
  18. package/dist/components/divider/Divider.d.ts +9 -0
  19. package/dist/components/divider/Divider.js +28 -0
  20. package/dist/components/divider/Divider.js.map +1 -0
  21. package/dist/components/divider/divider.css.js +6 -0
  22. package/dist/components/divider/divider.css.js.map +1 -0
  23. package/dist/components/divider/index.d.ts +7 -0
  24. package/dist/components/divider/index.js +7 -0
  25. package/dist/components/divider/index.js.map +1 -0
  26. package/dist/components/progress-circle/ProgressCircle.d.ts +36 -0
  27. package/dist/components/progress-circle/ProgressCircle.js +76 -0
  28. package/dist/components/progress-circle/ProgressCircle.js.map +1 -0
  29. package/dist/components/progress-circle/index.d.ts +7 -0
  30. package/dist/components/progress-circle/index.js +7 -0
  31. package/dist/components/progress-circle/index.js.map +1 -0
  32. package/dist/components/progress-circle/progress-circle.css.js +6 -0
  33. package/dist/components/progress-circle/progress-circle.css.js.map +1 -0
  34. package/dist/components/status-light/StatusLight.d.ts +33 -0
  35. package/dist/components/status-light/StatusLight.js +50 -0
  36. package/dist/components/status-light/StatusLight.js.map +1 -0
  37. package/dist/components/status-light/index.d.ts +7 -0
  38. package/dist/components/status-light/index.js +7 -0
  39. package/dist/components/status-light/index.js.map +1 -0
  40. package/dist/components/status-light/status-light.css.js +6 -0
  41. package/dist/components/status-light/status-light.css.js.map +1 -0
  42. package/dist/components/status-light/test/status-light.a11y.spec.d.ts +12 -0
  43. package/dist/utils/a11y-helpers.d.ts +29 -0
  44. package/dist/utils/test-setup.d.ts +0 -0
  45. package/dist/utils/test-utils.d.ts +23 -0
  46. package/dist/vite.config.d.ts +13 -0
  47. package/package.json +104 -0
@@ -0,0 +1,21 @@
1
+ import { CSSResultArray, TemplateResult } from 'lit';
2
+ import { AssetBase } from '@spectrum-web-components/core/components/asset';
3
+ /**
4
+ * @element swc-asset
5
+ * @slot - content to be displayed when no `variant` is set (typically an `<img>` element)
6
+ *
7
+ * @example
8
+ * <swc-asset>
9
+ * <img class="spectrum-Asset-image" src="example.png" alt="Example image" />
10
+ * </swc-asset>
11
+ *
12
+ * @example
13
+ * <swc-asset variant="file"></swc-asset>
14
+ *
15
+ * @example
16
+ * <swc-asset variant="folder"></swc-asset>
17
+ */
18
+ export declare class Asset extends AssetBase {
19
+ static get styles(): CSSResultArray;
20
+ protected render(): TemplateResult;
21
+ }
@@ -0,0 +1,60 @@
1
+ import { html as t } from "lit";
2
+ import { classMap as e } from "lit/directives/class-map.js";
3
+ import { AssetBase as c } from "@spectrum-web-components/core/components/asset";
4
+ import l from "./asset.css.js";
5
+ const r = (s) => t`
6
+ <svg
7
+ class="spectrum-Asset-file"
8
+ role="img"
9
+ viewBox="0 0 128 128"
10
+ aria-label=${s || "File"}
11
+ >
12
+ <path
13
+ class="spectrum-Asset-fileBackground"
14
+ d="M24,126c-5.5,0-10-4.5-10-10V12c0-5.5,4.5-10,10-10h61.5c2.1,0,4.1,0.8,5.6,2.3l20.5,20.4c1.5,1.5,2.4,3.5,2.4,5.7V116c0,5.5-4.5,10-10,10H24z"
15
+ ></path>
16
+ <path
17
+ class="spectrum-Asset-fileOutline"
18
+ d="M113.1,23.3L92.6,2.9C90.7,1,88.2,0,85.5,0H24c-6.6,0-12,5.4-12,12v104c0,6.6,5.4,12,12,12h80c6.6,0,12-5.4,12-12V30.4C116,27.8,114.9,25.2,113.1,23.3z M90,6l20.1,20H92c-1.1,0-2-0.9-2-2V6z M112,116c0,4.4-3.6,8-8,8H24c-4.4,0-8-3.6-8-8V12c0-4.4,3.6-8,8-8h61.5c0.2,0,0.3,0,0.5,0v20c0,3.3,2.7,6,6,6h20c0,0.1,0,0.3,0,0.4V116z"
19
+ ></path>
20
+ </svg>
21
+ `, a = (s) => t`
22
+ <svg
23
+ class="spectrum-Asset-folder"
24
+ role="img"
25
+ viewBox="0 0 32 32"
26
+ aria-label=${s || "Folder"}
27
+ >
28
+ <path
29
+ class="spectrum-Asset-folderBackground"
30
+ d="M3,29.5c-1.4,0-2.5-1.1-2.5-2.5V5c0-1.4,1.1-2.5,2.5-2.5h10.1c0.5,0,1,0.2,1.4,0.6l3.1,3.1c0.2,0.2,0.4,0.3,0.7,0.3H29c1.4,0,2.5,1.1,2.5,2.5v18c0,1.4-1.1,2.5-2.5,2.5H3z"
31
+ ></path>
32
+ <path
33
+ class="spectrum-Asset-folderOutline"
34
+ d="M29,6H18.3c-0.1,0-0.2,0-0.4-0.2l-3.1-3.1C14.4,2.3,13.8,2,13.1,2H3C1.3,2,0,3.3,0,5v22c0,1.6,1.3,3,3,3h26c1.7,0,3-1.4,3-3V9C32,7.3,30.7,6,29,6z M31,27c0,1.1-0.9,2-2,2H3c-1.1,0-2-0.9-2-2V7h28c1.1,0,2,0.9,2,2V27z"
35
+ ></path>
36
+ </svg>
37
+ `;
38
+ class m extends c {
39
+ // ──────────────────────────────
40
+ // RENDERING & STYLING
41
+ // ──────────────────────────────
42
+ static get styles() {
43
+ return [l];
44
+ }
45
+ render() {
46
+ return t`
47
+ <div
48
+ class=${e({
49
+ "spectrum-Asset": !0
50
+ })}
51
+ >
52
+ ${this.variant === "file" ? r(this.label) : this.variant === "folder" ? a(this.label) : t` <slot></slot> `}
53
+ </div>
54
+ `;
55
+ }
56
+ }
57
+ export {
58
+ m as Asset
59
+ };
60
+ //# sourceMappingURL=Asset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Asset.js","sources":["../../../components/asset/Asset.ts"],"sourcesContent":["/**\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { CSSResultArray, html, TemplateResult } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport { AssetBase } from '@spectrum-web-components/core/components/asset';\n\nimport styles from './asset.css';\n\nconst file = (label: string): TemplateResult => html`\n <svg\n class=\"spectrum-Asset-file\"\n role=\"img\"\n viewBox=\"0 0 128 128\"\n aria-label=${label || 'File'}\n >\n <path\n class=\"spectrum-Asset-fileBackground\"\n d=\"M24,126c-5.5,0-10-4.5-10-10V12c0-5.5,4.5-10,10-10h61.5c2.1,0,4.1,0.8,5.6,2.3l20.5,20.4c1.5,1.5,2.4,3.5,2.4,5.7V116c0,5.5-4.5,10-10,10H24z\"\n ></path>\n <path\n class=\"spectrum-Asset-fileOutline\"\n d=\"M113.1,23.3L92.6,2.9C90.7,1,88.2,0,85.5,0H24c-6.6,0-12,5.4-12,12v104c0,6.6,5.4,12,12,12h80c6.6,0,12-5.4,12-12V30.4C116,27.8,114.9,25.2,113.1,23.3z M90,6l20.1,20H92c-1.1,0-2-0.9-2-2V6z M112,116c0,4.4-3.6,8-8,8H24c-4.4,0-8-3.6-8-8V12c0-4.4,3.6-8,8-8h61.5c0.2,0,0.3,0,0.5,0v20c0,3.3,2.7,6,6,6h20c0,0.1,0,0.3,0,0.4V116z\"\n ></path>\n </svg>\n`;\n\nconst folder = (label: string): TemplateResult => html`\n <svg\n class=\"spectrum-Asset-folder\"\n role=\"img\"\n viewBox=\"0 0 32 32\"\n aria-label=${label || 'Folder'}\n >\n <path\n class=\"spectrum-Asset-folderBackground\"\n d=\"M3,29.5c-1.4,0-2.5-1.1-2.5-2.5V5c0-1.4,1.1-2.5,2.5-2.5h10.1c0.5,0,1,0.2,1.4,0.6l3.1,3.1c0.2,0.2,0.4,0.3,0.7,0.3H29c1.4,0,2.5,1.1,2.5,2.5v18c0,1.4-1.1,2.5-2.5,2.5H3z\"\n ></path>\n <path\n class=\"spectrum-Asset-folderOutline\"\n d=\"M29,6H18.3c-0.1,0-0.2,0-0.4-0.2l-3.1-3.1C14.4,2.3,13.8,2,13.1,2H3C1.3,2,0,3.3,0,5v22c0,1.6,1.3,3,3,3h26c1.7,0,3-1.4,3-3V9C32,7.3,30.7,6,29,6z M31,27c0,1.1-0.9,2-2,2H3c-1.1,0-2-0.9-2-2V7h28c1.1,0,2,0.9,2,2V27z\"\n ></path>\n </svg>\n`;\n\n/**\n * @element swc-asset\n * @slot - content to be displayed when no `variant` is set (typically an `<img>` element)\n *\n * @example\n * <swc-asset>\n * <img class=\"spectrum-Asset-image\" src=\"example.png\" alt=\"Example image\" />\n * </swc-asset>\n *\n * @example\n * <swc-asset variant=\"file\"></swc-asset>\n *\n * @example\n * <swc-asset variant=\"folder\"></swc-asset>\n */\nexport class Asset extends AssetBase {\n // ──────────────────────────────\n // RENDERING & STYLING\n // ──────────────────────────────\n\n public static override get styles(): CSSResultArray {\n return [styles];\n }\n\n protected override render(): TemplateResult {\n return html`\n <div\n class=${classMap({\n ['spectrum-Asset']: true,\n })}\n >\n ${this.variant === 'file'\n ? file(this.label)\n : this.variant === 'folder'\n ? folder(this.label)\n : html` <slot></slot> `}\n </div>\n `;\n }\n}\n"],"names":["file","label","html","folder","Asset","AssetBase","styles","classMap"],"mappings":";;;;AAmBA,MAAMA,IAAO,CAACC,MAAkCC;AAAA;AAAA;AAAA;AAAA;AAAA,qBAK3BD,KAAS,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAa9BE,IAAS,CAACF,MAAkCC;AAAA;AAAA;AAAA;AAAA;AAAA,qBAK7BD,KAAS,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA4B/B,MAAMG,UAAcC,EAAU;AAAA;AAAA;AAAA;AAAA,EAKjC,WAA2B,SAAyB;AAChD,WAAO,CAACC,CAAM;AAAA,EAClB;AAAA,EAEmB,SAAyB;AACxC,WAAOJ;AAAA;AAAA,wBAESK,EAAS;AAAA,MACZ,kBAAmB;AAAA,IAAA,CACvB,CAAC;AAAA;AAAA,kBAEA,KAAK,YAAY,SACbP,EAAK,KAAK,KAAK,IACf,KAAK,YAAY,WACfG,EAAO,KAAK,KAAK,IACjBD,kBAAqB;AAAA;AAAA;AAAA,EAGzC;AACJ;"}
@@ -0,0 +1,6 @@
1
+ import { css as e } from "lit";
2
+ const s = e`/*!\n * Copyright 2025 Adobe. All rights reserved.\n *\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at <http://www.apache.org/licenses/LICENSE-2.0>\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */:host{display:flex}*{box-sizing:border-box}.spectrum-Asset{display:flex;align-items:center;justify-content:center;inline-size:100%;block-size:100%}::slotted(*){max-inline-size:100%;max-block-size:100%;-o-object-fit:contain;object-fit:contain;transition:opacity .13s}.spectrum-Asset-folder,.spectrum-Asset-file{inline-size:max(48px,min(100%,80px));block-size:100%;margin:max(2px,min(10%,20px))}.spectrum-Asset-folderBackground{fill:var(--swc-gray-200)}.spectrum-Asset-fileBackground{fill:light-dark(var(--swc-gray-25),var(--swc-gray-200))}.spectrum-Asset-folderOutline,.spectrum-Asset-fileOutline{fill:var(--swc-gray-500)}`;
3
+ export {
4
+ s as default
5
+ };
6
+ //# sourceMappingURL=asset.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1,7 @@
1
+ import { Asset } from './Asset.js';
2
+ export * from './Asset.js';
3
+ declare global {
4
+ interface HTMLElementTagNameMap {
5
+ 'swc-asset': Asset;
6
+ }
7
+ }
@@ -0,0 +1,7 @@
1
+ import { defineElement as e } from "@spectrum-web-components/core/shared/base";
2
+ import { Asset as t } from "./Asset.js";
3
+ e("swc-asset", t);
4
+ export {
5
+ t as Asset
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../components/asset/index.ts"],"sourcesContent":["/**\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nimport { defineElement } from '@spectrum-web-components/core/shared/base';\n\nimport { Asset } from './Asset.js';\n\nexport * from './Asset.js';\ndeclare global {\n interface HTMLElementTagNameMap {\n 'swc-asset': Asset;\n }\n}\ndefineElement('swc-asset', Asset);\n"],"names":["defineElement","Asset"],"mappings":";;AAqBAA,EAAc,aAAaC,CAAK;"}
@@ -0,0 +1,47 @@
1
+ import { CSSResultArray, TemplateResult } from 'lit';
2
+ import { BadgeBase, BadgeVariantS2 as BadgeVariant } from '@spectrum-web-components/core/components/badge';
3
+ /**
4
+ * A badge component that displays short, descriptive information about an element.
5
+ * Badges are typically used to indicate status, categories, or provide supplementary information.
6
+ *
7
+ * @element swc-badge
8
+ *
9
+ * @example
10
+ * <swc-badge variant="positive">New</swc-badge>
11
+ *
12
+ * @example
13
+ * <swc-badge variant="neutral" fixed="fill">
14
+ * <sp-icon-checkmark slot="icon"></sp-icon-checkmark>
15
+ * Verified
16
+ * </swc-badge>
17
+ */
18
+ export declare class Badge extends BadgeBase {
19
+ /**
20
+ * @internal
21
+ */
22
+ static readonly VARIANTS_COLOR: readonly ["fuchsia", "indigo", "magenta", "purple", "seafoam", "yellow", "gray", "red", "orange", "chartreuse", "celery", "green", "cyan", "blue", "pink", "turquoise", "brown", "cinnamon", "silver"];
23
+ /**
24
+ * @internal
25
+ */
26
+ static readonly VARIANTS: readonly ["accent", "neutral", "informative", "positive", "negative", "notice", "fuchsia", "indigo", "magenta", "purple", "seafoam", "yellow", "gray", "red", "orange", "chartreuse", "celery", "green", "cyan", "blue", "pink", "turquoise", "brown", "cinnamon", "silver"];
27
+ /**
28
+ * The variant of the badge.
29
+ */
30
+ variant: BadgeVariant;
31
+ /**
32
+ * Whether the badge is subtle.
33
+ *
34
+ * @todo This can be moved to the base class once we are no longer maintaining 1st-gen.
35
+ */
36
+ subtle: boolean;
37
+ /**
38
+ * Whether the badge is outlined.
39
+ *
40
+ * Can only be used with semantic variants.
41
+ *
42
+ * @todo This can be moved to the base class once we are no longer maintaining 1st-gen.
43
+ */
44
+ outline: boolean;
45
+ static get styles(): CSSResultArray;
46
+ protected render(): TemplateResult;
47
+ }
@@ -0,0 +1,70 @@
1
+ import { html as d } from "lit";
2
+ import { property as r } from "lit/decorators.js";
3
+ import { classMap as f } from "lit/directives/class-map.js";
4
+ import { when as p } from "lit/directives/when.js";
5
+ import { BadgeBase as c, BADGE_VARIANTS_COLOR_S2 as u, BADGE_VARIANTS_S2 as h } from "@spectrum-web-components/core/components/badge";
6
+ import m from "./badge.css.js";
7
+ var v = Object.defineProperty, i = (e, a, l, B) => {
8
+ for (var t = void 0, s = e.length - 1, n; s >= 0; s--)
9
+ (n = e[s]) && (t = n(a, l, t) || t);
10
+ return t && v(a, l, t), t;
11
+ };
12
+ class o extends c {
13
+ constructor() {
14
+ super(...arguments), this.variant = "informative", this.subtle = !1, this.outline = !1;
15
+ }
16
+ static {
17
+ this.VARIANTS_COLOR = u;
18
+ }
19
+ static {
20
+ this.VARIANTS = h;
21
+ }
22
+ // ──────────────────────────────
23
+ // RENDERING & STYLING
24
+ // ──────────────────────────────
25
+ static get styles() {
26
+ return [m];
27
+ }
28
+ render() {
29
+ return d`
30
+ <div
31
+ class=${f({
32
+ "swc-Badge": !0,
33
+ [`swc-Badge--${this.variant}`]: typeof this.variant < "u",
34
+ "swc-Badge--subtle": this.subtle,
35
+ "swc-Badge--outline": this.outline,
36
+ [`swc-Badge--fixed-${this.fixed}`]: typeof this.fixed < "u"
37
+ })}
38
+ >
39
+ ${p(
40
+ this.hasIcon,
41
+ () => d`
42
+ <div
43
+ class=${f({
44
+ "swc-Badge-icon": !0
45
+ })}
46
+ >
47
+ <slot name="icon"></slot>
48
+ </div>
49
+ `
50
+ )}
51
+ <div class="swc-Badge-label">
52
+ <slot></slot>
53
+ </div>
54
+ </div>
55
+ `;
56
+ }
57
+ }
58
+ i([
59
+ r({ type: String, reflect: !0 })
60
+ ], o.prototype, "variant");
61
+ i([
62
+ r({ type: Boolean, reflect: !0 })
63
+ ], o.prototype, "subtle");
64
+ i([
65
+ r({ type: Boolean, reflect: !0 })
66
+ ], o.prototype, "outline");
67
+ export {
68
+ o as Badge
69
+ };
70
+ //# sourceMappingURL=Badge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Badge.js","sources":["../../../components/badge/Badge.ts"],"sourcesContent":["/**\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { CSSResultArray, html, TemplateResult } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { when } from 'lit/directives/when.js';\n\nimport {\n BADGE_VARIANTS_COLOR_S2,\n BADGE_VARIANTS_S2,\n BadgeBase,\n type BadgeVariantS2 as BadgeVariant,\n} from '@spectrum-web-components/core/components/badge';\n\nimport styles from './badge.css';\n\n/**\n * A badge component that displays short, descriptive information about an element.\n * Badges are typically used to indicate status, categories, or provide supplementary information.\n *\n * @element swc-badge\n *\n * @example\n * <swc-badge variant=\"positive\">New</swc-badge>\n *\n * @example\n * <swc-badge variant=\"neutral\" fixed=\"fill\">\n * <sp-icon-checkmark slot=\"icon\"></sp-icon-checkmark>\n * Verified\n * </swc-badge>\n */\nexport class Badge extends BadgeBase {\n // ────────────────────\n // API OVERRIDES\n // ────────────────────\n\n /**\n * @internal\n */\n static override readonly VARIANTS_COLOR = BADGE_VARIANTS_COLOR_S2;\n\n /**\n * @internal\n */\n static override readonly VARIANTS = BADGE_VARIANTS_S2;\n\n /**\n * The variant of the badge.\n */\n @property({ type: String, reflect: true })\n public override variant: BadgeVariant = 'informative';\n\n // ───────────────────\n // API ADDITIONS\n // ───────────────────\n\n /**\n * Whether the badge is subtle.\n *\n * @todo This can be moved to the base class once we are no longer maintaining 1st-gen.\n */\n @property({ type: Boolean, reflect: true })\n public subtle: boolean = false;\n\n /**\n * Whether the badge is outlined.\n *\n * Can only be used with semantic variants.\n *\n * @todo This can be moved to the base class once we are no longer maintaining 1st-gen.\n */\n @property({ type: Boolean, reflect: true })\n public outline: boolean = false;\n\n // ──────────────────────────────\n // RENDERING & STYLING\n // ──────────────────────────────\n\n public static override get styles(): CSSResultArray {\n return [styles];\n }\n\n protected override render(): TemplateResult {\n return html`\n <div\n class=${classMap({\n ['swc-Badge']: true,\n [`swc-Badge--${this.variant}`]:\n typeof this.variant !== 'undefined',\n [`swc-Badge--subtle`]: this.subtle,\n [`swc-Badge--outline`]: this.outline,\n [`swc-Badge--fixed-${this.fixed}`]:\n typeof this.fixed !== 'undefined',\n })}\n >\n ${when(\n this.hasIcon,\n () => html`\n <div\n class=${classMap({\n [`swc-Badge-icon`]: true,\n })}\n >\n <slot name=\"icon\"></slot>\n </div>\n `\n )}\n <div class=\"swc-Badge-label\">\n <slot></slot>\n </div>\n </div>\n `;\n }\n}\n"],"names":["Badge","BadgeBase","BADGE_VARIANTS_COLOR_S2","BADGE_VARIANTS_S2","styles","html","classMap","when","__decorateClass","property"],"mappings":";;;;;;;;;;;AAyCO,MAAMA,UAAcC,EAAU;AAAA,EAA9B,cAAA;AAAA,UAAA,GAAA,SAAA,GAmBH,KAAgB,UAAwB,eAYxC,KAAO,SAAkB,IAUzB,KAAO,UAAmB;AAAA,EAAA;AAAA,EAjC1B,OAAA;AAAA,SAAyB,iBAAiBC;AAAA,EAAA;AAAA,EAK1C,OAAA;AAAA,SAAyB,WAAWC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA,EAkCpC,WAA2B,SAAyB;AAChD,WAAO,CAACC,CAAM;AAAA,EAClB;AAAA,EAEmB,SAAyB;AACxC,WAAOC;AAAA;AAAA,wBAESC,EAAS;AAAA,MACZ,aAAc;AAAA,MACf,CAAC,cAAc,KAAK,OAAO,EAAE,GACzB,OAAO,KAAK,UAAY;AAAA,MAC3B,qBAAsB,KAAK;AAAA,MAC3B,sBAAuB,KAAK;AAAA,MAC7B,CAAC,oBAAoB,KAAK,KAAK,EAAE,GAC7B,OAAO,KAAK,QAAU;AAAA,IAAA,CAC7B,CAAC;AAAA;AAAA,kBAEAC;AAAA,MACE,KAAK;AAAA,MACL,MAAMF;AAAA;AAAA,oCAEUC,EAAS;AAAA,QACZ,kBAAmB;AAAA,MAAA,CACvB,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,CAKb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMb;AACJ;AA/DoBE,EAAA;AAAA,EADfC,EAAS,EAAE,MAAM,QAAQ,SAAS,IAAM;AAAA,GAlBhCT,EAmBO,WAAA,SAAA;AAYTQ,EAAA;AAAA,EADNC,EAAS,EAAE,MAAM,SAAS,SAAS,IAAM;AAAA,GA9BjCT,EA+BF,WAAA,QAAA;AAUAQ,EAAA;AAAA,EADNC,EAAS,EAAE,MAAM,SAAS,SAAS,IAAM;AAAA,GAxCjCT,EAyCF,WAAA,SAAA;"}
@@ -0,0 +1,6 @@
1
+ import { css as e } from "lit";
2
+ const c = e`/*!\n * Copyright 2026 Adobe. All rights reserved.\n *\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at <http://www.apache.org/licenses/LICENSE-2.0>\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */:host{display:inline-block;vertical-align:middle;align-self:start;justify-self:start;place-self:start}*{box-sizing:border-box}.swc-Badge{--_swc-badge-border-width: 2px;--_swc-badge-border-width-deduction: calc( var(--_swc-badge-border-width) * 2 );--_swc-badge-padding-block: var(--swc-component-top-to-text-100) var(--swc-component-bottom-to-text-100);display:inline-flex;align-items:center;cursor:default;min-block-size:var(--swc-badge-height, var(--swc-component-height-100));border-radius:var( --swc-badge-corner-radius, 8px );border:var(--_swc-badge-border-width) solid var(--swc-badge-border-color, transparent);background:var( --swc-badge-background-color, var(--swc-accent-background-color-default) );color:var(--swc-badge-label-icon-color, rgb(255, 255, 255));gap:var(--swc-badge-gap, var(--swc-text-to-visual-100));padding-inline:calc(var(--swc-badge-padding-inline, var(--swc-component-edge-to-text-100)) - var(--_swc-badge-border-width-deduction));padding-block:calc(var(--swc-badge-padding-block, var(--_swc-badge-padding-block)) - var(--_swc-badge-border-width-deduction))}.swc-Badge:has(.swc-Badge-icon){--swc-badge-padding-inline: var( --swc-badge-with-icon-padding-inline, var(--swc-component-edge-to-visual-100) )}.swc-Badge-label{font-size:var(--swc-badge-font-size, var(--swc-font-size-100));font-weight:500;line-height:var(--swc-badge-line-height, 1.3)}.swc-Badge-label:lang(ja),.swc-Badge-label:lang(zh),.swc-Badge-label:lang(ko){--swc-badge-line-height: 1.5}.swc-Badge-icon{--_swc-badge-icon-size: var(--swc-workflow-icon-size-100);block-size:var(--swc-badge-icon-size, var(--_swc-badge-icon-size));inline-size:var(--swc-badge-icon-size, var(--_swc-badge-icon-size));flex-shrink:0;display:grid;align-content:center;justify-content:center;place-content:center}:host([size=\"s\"]){--swc-badge-height: var(--swc-component-height-75);--swc-badge-corner-radius: 7px;--swc-badge-gap: var(--swc-text-to-visual-75);--swc-badge-padding-inline: var(--swc-component-edge-to-text-75);--swc-badge-with-icon-padding-inline: var(--swc-component-edge-to-visual-75);--swc-badge-padding-block: var(--swc-component-top-to-text-75) var(--swc-component-bottom-to-text-75);--swc-badge-font-size: var(--swc-font-size-75);--swc-badge-icon-size: var(--swc-workflow-icon-size-75)}:host([size=\"l\"]){--swc-badge-height: var(--swc-component-height-200);--swc-badge-corner-radius: 9px;--swc-badge-gap: var(--swc-text-to-visual-200);--swc-badge-padding-inline: var(--swc-component-edge-to-text-200);--swc-badge-with-icon-padding-inline: var(--swc-component-edge-to-visual-200);--swc-badge-padding-block: var(--swc-component-top-to-text-200) var(--swc-component-bottom-to-text-200);--swc-badge-font-size: var(--swc-font-size-200);--swc-badge-icon-size: var(--swc-workflow-icon-size-200)}:host([size=\"xl\"]){--swc-badge-height: var(--swc-component-height-300);--swc-badge-corner-radius: 10px;--swc-badge-gap: var(--swc-text-to-visual-300);--swc-badge-padding-inline: var(--swc-component-edge-to-text-300);--swc-badge-with-icon-padding-inline: var(--swc-component-edge-to-visual-300);--swc-badge-padding-block: var(--swc-component-top-to-text-300) var(--swc-component-bottom-to-text-300);--swc-badge-font-size: var(--swc-font-size-300);--swc-badge-icon-size: var(--swc-workflow-icon-size-300)}.swc-Badge--fixed-inline-start{border-start-start-radius:0;border-end-start-radius:0}.swc-Badge--fixed-inline-end{border-start-end-radius:0;border-end-end-radius:0}.swc-Badge--fixed-block-start{border-start-start-radius:0;border-start-end-radius:0}.swc-Badge--fixed-block-end{border-end-start-radius:0;border-end-end-radius:0}:host([variant=\"notice\"]),:host([variant=\"celery\"]),:host([variant=\"chartreuse\"]),:host([variant=\"orange\"]),:host([variant=\"yellow\"]){--swc-badge-label-icon-color: rgb(0, 0, 0)}:host([variant=\"neutral\"]){--swc-badge-background-color: var(--swc-neutral-subdued-background-color-default)}:host([variant=\"informative\"]){--swc-badge-background-color: var(--swc-informative-background-color-default)}:host([variant=\"negative\"]){--swc-badge-background-color: var(--swc-negative-background-color-default)}:host([variant=\"positive\"]){--swc-badge-background-color: var(--swc-positive-background-color-default)}:host([variant=\"notice\"]){--swc-badge-background-color: var(--swc-notice-background-color-default)}.swc-Badge--gray{--swc-badge-background-color: var(--swc-gray-background-color-default)}.swc-Badge--red{--swc-badge-background-color: var(--swc-red-background-color-default)}.swc-Badge--orange{--swc-badge-background-color: var(--swc-orange-background-color-default)}.swc-Badge--yellow{--swc-badge-background-color: var(--swc-yellow-background-color-default)}.swc-Badge--chartreuse{--swc-badge-background-color: var(--swc-chartreuse-background-color-default)}.swc-Badge--celery{--swc-badge-background-color: var(--swc-celery-background-color-default)}.swc-Badge--green{--swc-badge-background-color: var(--swc-green-background-color-default)}.swc-Badge--seafoam{--swc-badge-background-color: var(--swc-seafoam-background-color-default)}.swc-Badge--cyan{--swc-badge-background-color: var(--swc-cyan-background-color-default)}.swc-Badge--blue{--swc-badge-background-color: var(--swc-blue-background-color-default)}.swc-Badge--indigo{--swc-badge-background-color: var(--swc-indigo-background-color-default)}.swc-Badge--purple{--swc-badge-background-color: var(--swc-purple-background-color-default)}.swc-Badge--fuchsia{--swc-badge-background-color: var(--swc-fuchsia-background-color-default)}.swc-Badge--magenta{--swc-badge-background-color: var(--swc-magenta-background-color-default)}.swc-Badge--pink{--swc-badge-background-color: var(--swc-pink-background-color-default)}.swc-Badge--turquoise{--swc-badge-background-color: var(--swc-turquoise-background-color-default)}.swc-Badge--brown{--swc-badge-background-color: var(--swc-brown-background-color-default)}.swc-Badge--cinnamon{--swc-badge-background-color: var(--swc-cinnamon-background-color-default)}.swc-Badge--silver{--swc-badge-background-color: var(--swc-silver-background-color-default)}:host([subtle]){--swc-badge-label-icon-color: var(--swc-gray-1000)}:host([subtle][variant=\"neutral\"]){--swc-badge-background-color: var(--swc-neutral-subtle-background-color-default)}:host([subtle][variant=\"accent\"]){--swc-badge-background-color: var(--swc-accent-subtle-background-color-default)}:host([subtle][variant=\"informative\"]){--swc-badge-background-color: var(--swc-informative-subtle-background-color-default)}:host([subtle][variant=\"negative\"]){--swc-badge-background-color: var(--swc-negative-subtle-background-color-default)}:host([subtle][variant=\"positive\"]){--swc-badge-background-color: var(--swc-positive-subtle-background-color-default)}:host([subtle][variant=\"notice\"]){--swc-badge-background-color: var(--swc-notice-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--gray){--swc-badge-background-color: var(--swc-gray-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--red){--swc-badge-background-color: var(--swc-red-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--orange){--swc-badge-background-color: var(--swc-orange-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--yellow){--swc-badge-background-color: var(--swc-yellow-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--chartreuse){--swc-badge-background-color: var(--swc-chartreuse-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--celery){--swc-badge-background-color: var(--swc-celery-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--green){--swc-badge-background-color: var(--swc-green-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--seafoam){--swc-badge-background-color: var(--swc-seafoam-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--cyan){--swc-badge-background-color: var(--swc-cyan-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--blue){--swc-badge-background-color: var(--swc-blue-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--indigo){--swc-badge-background-color: var(--swc-indigo-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--purple){--swc-badge-background-color: var(--swc-purple-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--fuchsia){--swc-badge-background-color: var(--swc-fuchsia-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--magenta){--swc-badge-background-color: var(--swc-magenta-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--pink){--swc-badge-background-color: var(--swc-pink-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--turquoise){--swc-badge-background-color: var(--swc-turquoise-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--brown){--swc-badge-background-color: var(--swc-brown-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--cinnamon){--swc-badge-background-color: var(--swc-cinnamon-subtle-background-color-default)}.swc-Badge--subtle:where(.swc-Badge--silver){--swc-badge-background-color: var(--swc-silver-subtle-background-color-default)}:host([outline][variant=\"neutral\"]),:host([outline][variant=\"accent\"]),:host([outline][variant=\"informative\"]),:host([outline][variant=\"negative\"]),:host([outline][variant=\"positive\"]),:host([outline][variant=\"notice\"]){--swc-badge-background-color: var( --swc-badge-outline-background-color, var(--swc-background-layer-2-color) );--swc-badge-label-icon-color: var( --swc-badge-outline-label-icon-color, var(--swc-gray-1000) )}:host([outline][variant=\"neutral\"]){--swc-badge-border-color: var(--swc-neutral-visual-color)}:host([outline][variant=\"accent\"]){--swc-badge-border-color: var(--swc-accent-visual-color)}:host([outline][variant=\"informative\"]){--swc-badge-border-color: var(--swc-informative-visual-color)}:host([outline][variant=\"negative\"]){--swc-badge-border-color: var(--swc-negative-visual-color)}:host([outline][variant=\"positive\"]){--swc-badge-border-color: var(--swc-positive-visual-color)}:host([outline][variant=\"notice\"]){--swc-badge-border-color: var(--swc-notice-visual-color)}`;
3
+ export {
4
+ c as default
5
+ };
6
+ //# sourceMappingURL=badge.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"badge.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1,7 @@
1
+ import { Badge } from './Badge.js';
2
+ export * from './Badge.js';
3
+ declare global {
4
+ interface HTMLElementTagNameMap {
5
+ 'swc-badge': Badge;
6
+ }
7
+ }
@@ -0,0 +1,7 @@
1
+ import { defineElement as e } from "@spectrum-web-components/core/shared/base";
2
+ import { Badge as m } from "./Badge.js";
3
+ e("swc-badge", m);
4
+ export {
5
+ m as Badge
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../components/badge/index.ts"],"sourcesContent":["/**\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nimport { defineElement } from '@spectrum-web-components/core/shared/base';\n\nimport { Badge } from './Badge.js';\n\nexport * from './Badge.js';\ndeclare global {\n interface HTMLElementTagNameMap {\n 'swc-badge': Badge;\n }\n}\ndefineElement('swc-badge', Badge);\n"],"names":["defineElement","Badge"],"mappings":";;AAqBAA,EAAc,aAAaC,CAAK;"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Copyright 2025 Adobe. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+ export {};
@@ -0,0 +1,9 @@
1
+ import { CSSResultArray, TemplateResult } from 'lit';
2
+ import { DividerBase } from '@spectrum-web-components/core/components/divider';
3
+ /**
4
+ * @element swc-divider
5
+ */
6
+ export declare class Divider extends DividerBase {
7
+ static styles: CSSResultArray;
8
+ protected render(): TemplateResult;
9
+ }
@@ -0,0 +1,28 @@
1
+ import { html as t } from "lit";
2
+ import { classMap as s } from "lit/directives/class-map.js";
3
+ import { DividerBase as e } from "@spectrum-web-components/core/components/divider";
4
+ import r from "./divider.css.js";
5
+ function c(i) {
6
+ return typeof i != "string" ? "" : i.charAt(0).toUpperCase() + i.slice(1);
7
+ }
8
+ class d extends e {
9
+ static {
10
+ this.styles = [r];
11
+ }
12
+ render() {
13
+ return t`
14
+ <div
15
+ class=${s({
16
+ "swc-Divider": !0,
17
+ [`swc-Divider--size${this.size?.toUpperCase()}`]: this.size != null,
18
+ [`swc-Divider--static${c(this.staticColor)}`]: this.staticColor != null,
19
+ "swc-Divider--vertical": this.vertical
20
+ })}
21
+ ></div>
22
+ `;
23
+ }
24
+ }
25
+ export {
26
+ d as Divider
27
+ };
28
+ //# sourceMappingURL=Divider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Divider.js","sources":["../../../components/divider/Divider.ts"],"sourcesContent":["/**\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { CSSResultArray, html, TemplateResult } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport { DividerBase } from '@spectrum-web-components/core/components/divider';\n\nimport styles from './divider.css';\n\n// @todo Pull this up into a utility function for all components to leverage\nfunction capitalize(str?: string): string {\n if (typeof str !== 'string') {\n return '';\n }\n return str.charAt(0).toUpperCase() + str.slice(1);\n}\n\n/**\n * @element swc-divider\n */\nexport class Divider extends DividerBase {\n // ────────────────────\n // RENDERING & STYLING\n // ────────────────────\n\n public static override styles: CSSResultArray = [styles];\n\n protected override render(): TemplateResult {\n return html`\n <div\n class=${classMap({\n ['swc-Divider']: true,\n [`swc-Divider--size${this.size?.toUpperCase()}`]:\n this.size != null,\n [`swc-Divider--static${capitalize(this.staticColor)}`]:\n this.staticColor != null,\n [`swc-Divider--vertical`]: this.vertical,\n })}\n ></div>\n `;\n }\n}\n"],"names":["capitalize","str","Divider","DividerBase","styles","html","classMap"],"mappings":";;;;AAoBA,SAASA,EAAWC,GAAsB;AACtC,SAAI,OAAOA,KAAQ,WACR,KAEJA,EAAI,OAAO,CAAC,EAAE,gBAAgBA,EAAI,MAAM,CAAC;AACpD;AAKO,MAAMC,UAAgBC,EAAY;AAAA,EAKrC,OAAA;AAAA,SAAuB,SAAyB,CAACC,CAAM;AAAA,EAAA;AAAA,EAEpC,SAAyB;AACxC,WAAOC;AAAA;AAAA,wBAESC,EAAS;AAAA,MACZ,eAAgB;AAAA,MACjB,CAAC,oBAAoB,KAAK,MAAM,aAAa,EAAE,GAC3C,KAAK,QAAQ;AAAA,MACjB,CAAC,sBAAsBN,EAAW,KAAK,WAAW,CAAC,EAAE,GACjD,KAAK,eAAe;AAAA,MACvB,yBAA0B,KAAK;AAAA,IAAA,CACnC,CAAC;AAAA;AAAA;AAAA,EAGd;AACJ;"}
@@ -0,0 +1,6 @@
1
+ import { css as i } from "lit";
2
+ const s = i`:host{display:block}*{box-sizing:border-box}.swc-Divider{--_swc-divider-thickness: var( --swc-divider-thickness, 2px );border:none;border-radius:var(--_swc-divider-thickness);background-color:var(--swc-divider-background-color, var(--swc-gray-200));block-size:var(--_swc-divider-thickness);inline-size:100%}.swc-Divider:not(.swc-Divider--vertical){min-inline-size:200px}.swc-Divider--vertical{inline-size:var(--_swc-divider-thickness);min-block-size:200px;margin-block:0;block-size:100%;align-self:flex-start}:host([size=\"s\"]){--swc-divider-thickness: 1px}:host([size=\"l\"]){--swc-divider-thickness: 4px;--swc-divider-background-color: var(--swc-gray-800)}.swc-Divider--staticWhite{--swc-divider-background-color: rgba(255, 255, 255, .14)}.swc-Divider--staticWhite:where(.swc-Divider--sizeL){--swc-divider-background-color: rgba(255, 255, 255, .85)}.swc-Divider--staticBlack{--swc-divider-background-color: rgba(0, 0, 0, .12)}.swc-Divider--staticBlack:where(.swc-Divider--sizeL){--swc-divider-background-color: rgba(0, 0, 0, .84)}@media(forced-colors:active){.swc-Divider{--swc-divider-background-color: CanvasText}}`;
3
+ export {
4
+ s as default
5
+ };
6
+ //# sourceMappingURL=divider.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1,7 @@
1
+ import { Divider } from './Divider.js';
2
+ export * from './Divider.js';
3
+ declare global {
4
+ interface HTMLElementTagNameMap {
5
+ 'swc-divider': Divider;
6
+ }
7
+ }
@@ -0,0 +1,7 @@
1
+ import { defineElement as e } from "@spectrum-web-components/core/shared/base";
2
+ import { Divider as i } from "./Divider.js";
3
+ e("swc-divider", i);
4
+ export {
5
+ i as Divider
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../components/divider/index.ts"],"sourcesContent":["/**\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nimport { defineElement } from '@spectrum-web-components/core/shared/base';\n\nimport { Divider } from './Divider.js';\n\nexport * from './Divider.js';\ndeclare global {\n interface HTMLElementTagNameMap {\n 'swc-divider': Divider;\n }\n}\ndefineElement('swc-divider', Divider);\n"],"names":["defineElement","Divider"],"mappings":";;AAqBAA,EAAc,eAAeC,CAAO;"}
@@ -0,0 +1,36 @@
1
+ import { CSSResultArray, TemplateResult } from 'lit';
2
+ import { ProgressCircleBase, ProgressCircleStaticColorS2 } from '@spectrum-web-components/core/components/progress-circle';
3
+ /**
4
+ * A progress circle component that visually represents the completion progress of a task.
5
+ * Can be used in both determinate (with specific progress value) and indeterminate (loading) states.
6
+ *
7
+ * @element swc-progress-circle
8
+ *
9
+ * @prop {string} static-color - Static color variant for use on different backgrounds.
10
+ * @prop {number} progress - Progress value between 0 and 100.
11
+ * @prop {boolean} indeterminate - Indeterminate state for loading.
12
+ * @prop {string} size - Size of the component.
13
+ * @prop {string} label - Label for the component.
14
+ *
15
+ * @example
16
+ * <swc-progress-circle progress="75" label="Loading progress"></swc-progress-circle>
17
+ *
18
+ * @example
19
+ * <swc-progress-circle indeterminate label="Loading..."></swc-progress-circle>
20
+ */
21
+ export declare class ProgressCircle extends ProgressCircleBase {
22
+ /**
23
+ * @internal
24
+ */
25
+ static readonly STATIC_COLORS: readonly ["white", "black"];
26
+ /**
27
+ * Static color variant for use on different backgrounds.
28
+ *
29
+ * When set to 'white', the component uses white styling for images with a dark tinted background.
30
+ *
31
+ * When set to 'black', the component uses black styling for images with a light tinted background.
32
+ */
33
+ staticColor?: ProgressCircleStaticColorS2;
34
+ static get styles(): CSSResultArray;
35
+ protected render(): TemplateResult;
36
+ }
@@ -0,0 +1,76 @@
1
+ import { html as o } from "lit";
2
+ import { property as l } from "lit/decorators.js";
3
+ import { classMap as a } from "lit/directives/class-map.js";
4
+ import { ProgressCircleBase as n, PROGRESS_CIRCLE_STATIC_COLORS_S2 as p } from "@spectrum-web-components/core/components/progress-circle";
5
+ import h from "./progress-circle.css.js";
6
+ var C = Object.defineProperty, f = (r, s, t, u) => {
7
+ for (var e = void 0, i = r.length - 1, c; i >= 0; i--)
8
+ (c = r[i]) && (e = c(s, t, e) || e);
9
+ return e && C(s, t, e), e;
10
+ };
11
+ function d(r) {
12
+ return typeof r != "string" ? "" : r.charAt(0).toUpperCase() + r.slice(1);
13
+ }
14
+ class g extends n {
15
+ static {
16
+ this.STATIC_COLORS = p;
17
+ }
18
+ // ──────────────────────────────
19
+ // RENDERING & STYLING
20
+ // ──────────────────────────────
21
+ static get styles() {
22
+ return [h];
23
+ }
24
+ render() {
25
+ const s = this.size === "s" ? 2 : this.size === "l" ? 6 : 4, t = `calc(50% - ${s / 2}px)`;
26
+ return o`
27
+ <div
28
+ class=${a({
29
+ "swc-ProgressCircle": !0,
30
+ "swc-ProgressCircle--indeterminate": this.indeterminate,
31
+ [`swc-ProgressCircle--static${d(this.staticColor)}`]: typeof this.staticColor < "u",
32
+ [`swc-ProgressCircle--size${this.size?.toUpperCase()}`]: typeof this.size < "u"
33
+ })}
34
+ >
35
+ <slot @slotchange=${this.handleSlotchange}></slot>
36
+ <svg
37
+ fill="none"
38
+ width="100%"
39
+ height="100%"
40
+ class="swc-outerCircle"
41
+ >
42
+ <circle
43
+ class="swc-innerCircle"
44
+ cx="50%"
45
+ cy="50%"
46
+ r=${`calc(50% - ${s / 1}px)`}
47
+ stroke-width=${s}
48
+ />
49
+ <circle
50
+ cx="50%"
51
+ cy="50%"
52
+ class="swc-ProgressCircle-track"
53
+ r=${t}
54
+ />
55
+ <circle
56
+ cx="50%"
57
+ cy="50%"
58
+ r=${t}
59
+ class="swc-ProgressCircle-fill"
60
+ pathLength="100"
61
+ stroke-dasharray="100 200"
62
+ stroke-dashoffset=${100 - this.progress}
63
+ stroke-linecap="round"
64
+ />
65
+ </svg>
66
+ </div>
67
+ `;
68
+ }
69
+ }
70
+ f([
71
+ l({ reflect: !0, attribute: "static-color" })
72
+ ], g.prototype, "staticColor");
73
+ export {
74
+ g as ProgressCircle
75
+ };
76
+ //# sourceMappingURL=ProgressCircle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressCircle.js","sources":["../../../components/progress-circle/ProgressCircle.ts"],"sourcesContent":["/**\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { CSSResultArray, html, TemplateResult } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport {\n PROGRESS_CIRCLE_STATIC_COLORS_S2,\n ProgressCircleBase,\n type ProgressCircleStaticColorS2,\n} from '@spectrum-web-components/core/components/progress-circle';\n\nimport progressCircleStyles from './progress-circle.css';\n\nfunction capitalize(str?: string): string {\n if (typeof str !== 'string') {\n return '';\n }\n return str.charAt(0).toUpperCase() + str.slice(1);\n}\n/**\n * A progress circle component that visually represents the completion progress of a task.\n * Can be used in both determinate (with specific progress value) and indeterminate (loading) states.\n *\n * @element swc-progress-circle\n *\n * @prop {string} static-color - Static color variant for use on different backgrounds.\n * @prop {number} progress - Progress value between 0 and 100.\n * @prop {boolean} indeterminate - Indeterminate state for loading.\n * @prop {string} size - Size of the component.\n * @prop {string} label - Label for the component.\n *\n * @example\n * <swc-progress-circle progress=\"75\" label=\"Loading progress\"></swc-progress-circle>\n *\n * @example\n * <swc-progress-circle indeterminate label=\"Loading...\"></swc-progress-circle>\n */\nexport class ProgressCircle extends ProgressCircleBase {\n // ────────────────────\n // API OVERRIDES\n // ────────────────────\n\n /**\n * @internal\n */\n static override readonly STATIC_COLORS = PROGRESS_CIRCLE_STATIC_COLORS_S2;\n\n /**\n * Static color variant for use on different backgrounds.\n *\n * When set to 'white', the component uses white styling for images with a dark tinted background.\n *\n * When set to 'black', the component uses black styling for images with a light tinted background.\n */\n @property({ reflect: true, attribute: 'static-color' })\n public staticColor?: ProgressCircleStaticColorS2;\n\n // ──────────────────────────────\n // RENDERING & STYLING\n // ──────────────────────────────\n\n public static override get styles(): CSSResultArray {\n return [progressCircleStyles];\n }\n\n protected override render(): TemplateResult {\n const strokeWidth = this.size === 's' ? 2 : this.size === 'l' ? 6 : 4;\n // SVG strokes are centered, so subtract half the stroke width from the radius to create an inner stroke.\n const radius = `calc(50% - ${strokeWidth / 2}px)`;\n\n return html`\n <div\n class=${classMap({\n ['swc-ProgressCircle']: true,\n [`swc-ProgressCircle--indeterminate`]: this.indeterminate,\n [`swc-ProgressCircle--static${capitalize(this.staticColor)}`]:\n typeof this.staticColor !== 'undefined',\n [`swc-ProgressCircle--size${this.size?.toUpperCase()}`]:\n typeof this.size !== 'undefined',\n })}\n >\n <slot @slotchange=${this.handleSlotchange}></slot>\n <svg\n fill=\"none\"\n width=\"100%\"\n height=\"100%\"\n class=\"swc-outerCircle\"\n >\n <circle\n class=\"swc-innerCircle\"\n cx=\"50%\"\n cy=\"50%\"\n r=${`calc(50% - ${strokeWidth / 1}px)`}\n stroke-width=${strokeWidth}\n />\n <circle\n cx=\"50%\"\n cy=\"50%\"\n class=\"swc-ProgressCircle-track\"\n r=${radius}\n />\n <circle\n cx=\"50%\"\n cy=\"50%\"\n r=${radius}\n class=\"swc-ProgressCircle-fill\"\n pathLength=\"100\"\n stroke-dasharray=\"100 200\"\n stroke-dashoffset=${100 - this.progress}\n stroke-linecap=\"round\"\n />\n </svg>\n </div>\n `;\n }\n}\n"],"names":["capitalize","str","ProgressCircle","ProgressCircleBase","PROGRESS_CIRCLE_STATIC_COLORS_S2","progressCircleStyles","strokeWidth","radius","html","classMap","__decorateClass","property"],"mappings":";;;;;;;;;;AAwBA,SAASA,EAAWC,GAAsB;AACtC,SAAI,OAAOA,KAAQ,WACR,KAEJA,EAAI,OAAO,CAAC,EAAE,gBAAgBA,EAAI,MAAM,CAAC;AACpD;AAmBO,MAAMC,UAAuBC,EAAmB;AAAA,EAQnD,OAAA;AAAA,SAAyB,gBAAgBC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA,EAgBzC,WAA2B,SAAyB;AAChD,WAAO,CAACC,CAAoB;AAAA,EAChC;AAAA,EAEmB,SAAyB;AACxC,UAAMC,IAAc,KAAK,SAAS,MAAM,IAAI,KAAK,SAAS,MAAM,IAAI,GAE9DC,IAAS,cAAcD,IAAc,CAAC;AAE5C,WAAOE;AAAA;AAAA,wBAESC,EAAS;AAAA,MACZ,sBAAuB;AAAA,MACvB,qCAAsC,KAAK;AAAA,MAC5C,CAAC,6BAA6BT,EAAW,KAAK,WAAW,CAAC,EAAE,GACxD,OAAO,KAAK,cAAgB;AAAA,MAChC,CAAC,2BAA2B,KAAK,MAAM,YAAA,CAAa,EAAE,GAClD,OAAO,KAAK,OAAS;AAAA,IAAA,CAC5B,CAAC;AAAA;AAAA,oCAEkB,KAAK,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAW7B,cAAcM,IAAc,CAAC,KAAK;AAAA,uCACvBA,CAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAMtBC,CAAM;AAAA;AAAA;AAAA;AAAA;AAAA,4BAKNA,CAAM;AAAA;AAAA;AAAA;AAAA,4CAIU,MAAM,KAAK,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAM3D;AACJ;AA5DWG,EAAA;AAAA,EADNC,EAAS,EAAE,SAAS,IAAM,WAAW,gBAAgB;AAAA,GAjB7CT,EAkBF,WAAA,aAAA;"}
@@ -0,0 +1,7 @@
1
+ import { ProgressCircle } from './ProgressCircle.js';
2
+ export * from './ProgressCircle.js';
3
+ declare global {
4
+ interface HTMLElementTagNameMap {
5
+ 'swc-progress-circle': ProgressCircle;
6
+ }
7
+ }
@@ -0,0 +1,7 @@
1
+ import { defineElement as r } from "@spectrum-web-components/core/shared/base";
2
+ import { ProgressCircle as e } from "./ProgressCircle.js";
3
+ r("swc-progress-circle", e);
4
+ export {
5
+ e as ProgressCircle
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../components/progress-circle/index.ts"],"sourcesContent":["/**\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nimport { defineElement } from '@spectrum-web-components/core/shared/base';\n\nimport { ProgressCircle } from './ProgressCircle.js';\n\nexport * from './ProgressCircle.js';\ndeclare global {\n interface HTMLElementTagNameMap {\n 'swc-progress-circle': ProgressCircle;\n }\n}\ndefineElement('swc-progress-circle', ProgressCircle);\n"],"names":["defineElement","ProgressCircle"],"mappings":";;AAqBAA,EAAc,uBAAuBC,CAAc;"}
@@ -0,0 +1,6 @@
1
+ import { css as r } from "lit";
2
+ const s = r`/*!\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */@keyframes swc-fills-rotate{0%{transform:rotate(-90deg)}to{transform:rotate(270deg)}}@keyframes swc-dashoffset-animation{0%,to{stroke-dashoffset:75px}30%{stroke-dashoffset:20px}}:host{display:inline-block;align-self:center;justify-self:center;place-self:center}*{box-sizing:border-box}.swc-ProgressCircle{--_swc-progress-circle-size: var( --swc-progress-circle-size, var(--swc-progress-circle-size-medium) );--_swc-progress-circle-track-border-color: var( --swc-progress-circle-track-border-color, var(--swc-gray-300) );--_swc-progress-circle-fill-border-color: var( --swc-progress-circle-fill-border-color, var(--swc-accent-color-900) );--_swc-progress-circle-thickness: var( --swc-progress-circle-thickness, var(--swc-progress-circle-thickness-medium) );display:inline-block;inline-size:var(--_swc-progress-circle-size);block-size:var(--_swc-progress-circle-size);position:relative;direction:ltr;transform:translateZ(0)}.swc-ProgressCircle-fill,.swc-ProgressCircle-track{inline-size:var(--_swc-progress-circle-size);block-size:var(--_swc-progress-circle-size)}.swc-ProgressCircle-track{stroke-width:var(--_swc-progress-circle-thickness);stroke:var(--_swc-progress-circle-track-border-color)}.swc-ProgressCircle-fill{stroke-width:var(--_swc-progress-circle-thickness);stroke:var(--_swc-progress-circle-fill-border-color);transform:rotate(-90deg);transform-origin:center}.swc-ProgressCircle--indeterminate .swc-ProgressCircle-fill{will-change:transform;animation:swc-fills-rotate 1s cubic-bezier(.6,.1,.3,.9) infinite,swc-dashoffset-animation 1s cubic-bezier(.25,.1,.25,1.3) infinite;transform-origin:center}:host([size=\"s\"]){--swc-progress-circle-size: var(--swc-progress-circle-size-small);--swc-progress-circle-thickness: var(--swc-progress-circle-thickness-small)}:host([size=\"l\"]){--swc-progress-circle-size: var(--swc-progress-circle-size-large);--swc-progress-circle-thickness: var(--swc-progress-circle-thickness-large)}.swc-ProgressCircle:where(.swc-ProgressCircle--staticWhite){--swc-progress-circle-track-border-color: var(--swc-transparent-white-300);--swc-progress-circle-fill-border-color: var(--swc-transparent-white-900)}.swc-ProgressCircle:where(.swc-ProgressCircle--staticBlack){--swc-progress-circle-track-border-color: var(--swc-transparent-black-300);--swc-progress-circle-fill-border-color: var(--swc-transparent-black-900)}slot{display:none}@media(forced-colors:active){.swc-ProgressCircle{--swc-progress-circle-fill-border-color: Highlight;--swc-progress-circle-track-color: Canvas}@media(prefers-color-scheme:dark){.swc-ProgressCircle{--swc-progress-circle-track-border-color: var(--swc-transparent-white-300)}}@media(prefers-color-scheme:light){.swc-ProgressCircle{--swc-progress-circle-track-border-color: var(--swc-transparent-black-300)}}}`;
3
+ export {
4
+ s as default
5
+ };
6
+ //# sourceMappingURL=progress-circle.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress-circle.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1,33 @@
1
+ import { CSSResultArray, TemplateResult } from 'lit';
2
+ import { StatusLightBase, StatusLightVariantS2 as StatusLightVariant } from '@spectrum-web-components/core/components/status-light';
3
+ /**
4
+ * A status light is a great way to convey semantic meaning and the condition of an entity, such as statuses and categories. It provides visual indicators through colored dots accompanied by descriptive text.
5
+ *
6
+ * @element swc-status-light
7
+ *
8
+ * @example
9
+ * <swc-status-light variant="positive">Approved</swc-status-light>
10
+ *
11
+ * @example
12
+ * <swc-status-light variant="silver">Supported in Edge</swc-status-light>
13
+ */
14
+ export declare class StatusLight extends StatusLightBase {
15
+ /**
16
+ * @internal
17
+ */
18
+ static readonly VARIANTS_COLOR: readonly ["fuchsia", "indigo", "magenta", "purple", "seafoam", "yellow", "chartreuse", "celery", "cyan", "pink", "turquoise", "brown", "cinnamon", "silver"];
19
+ /**
20
+ * @internal
21
+ */
22
+ static readonly VARIANTS_SEMANTIC: readonly ["neutral", "info", "positive", "negative", "notice"];
23
+ /**
24
+ * @internal
25
+ */
26
+ static readonly VARIANTS: readonly ["neutral", "info", "positive", "negative", "notice", "fuchsia", "indigo", "magenta", "purple", "seafoam", "yellow", "chartreuse", "celery", "cyan", "pink", "turquoise", "brown", "cinnamon", "silver"];
27
+ /**
28
+ * Changes the color of the status dot. The variant list includes both semantic and non-semantic options.
29
+ */
30
+ variant: StatusLightVariant;
31
+ static get styles(): CSSResultArray;
32
+ protected render(): TemplateResult;
33
+ }
@@ -0,0 +1,50 @@
1
+ import { html as S } from "lit";
2
+ import { property as o } from "lit/decorators.js";
3
+ import { classMap as n } from "lit/directives/class-map.js";
4
+ import { StatusLightBase as p, STATUSLIGHT_VARIANTS_COLOR_S2 as A, STATUSLIGHT_VARIANTS_SEMANTIC_S2 as T, STATUSLIGHT_VARIANTS_S2 as u } from "@spectrum-web-components/core/components/status-light";
5
+ import h from "./status-light.css.js";
6
+ var f = Object.defineProperty, l = (s, i, e, c) => {
7
+ for (var t = void 0, r = s.length - 1, a; r >= 0; r--)
8
+ (a = s[r]) && (t = a(i, e, t) || t);
9
+ return t && f(i, e, t), t;
10
+ };
11
+ class _ extends p {
12
+ constructor() {
13
+ super(...arguments), this.variant = "info";
14
+ }
15
+ static {
16
+ this.VARIANTS_COLOR = A;
17
+ }
18
+ static {
19
+ this.VARIANTS_SEMANTIC = T;
20
+ }
21
+ static {
22
+ this.VARIANTS = u;
23
+ }
24
+ // ──────────────────────────────
25
+ // RENDERING & STYLING
26
+ // ──────────────────────────────
27
+ static get styles() {
28
+ return [h];
29
+ }
30
+ render() {
31
+ return S`
32
+ <div
33
+ class=${n({
34
+ "swc-StatusLight": !0,
35
+ [`swc-StatusLight--size${this.size?.toUpperCase()}`]: this.size != null,
36
+ [`swc-StatusLight--${this.variant}`]: typeof this.variant < "u"
37
+ })}
38
+ >
39
+ <slot></slot>
40
+ </div>
41
+ `;
42
+ }
43
+ }
44
+ l([
45
+ o({ type: String, reflect: !0 })
46
+ ], _.prototype, "variant");
47
+ export {
48
+ _ as StatusLight
49
+ };
50
+ //# sourceMappingURL=StatusLight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatusLight.js","sources":["../../../components/status-light/StatusLight.ts"],"sourcesContent":["/**\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { CSSResultArray, html, TemplateResult } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport {\n STATUSLIGHT_VARIANTS_COLOR_S2,\n STATUSLIGHT_VARIANTS_S2,\n STATUSLIGHT_VARIANTS_SEMANTIC_S2,\n StatusLightBase,\n type StatusLightVariantS2 as StatusLightVariant,\n} from '@spectrum-web-components/core/components/status-light';\n\nimport styles from './status-light.css';\n\n/**\n * A status light is a great way to convey semantic meaning and the condition of an entity, such as statuses and categories. It provides visual indicators through colored dots accompanied by descriptive text.\n *\n * @element swc-status-light\n *\n * @example\n * <swc-status-light variant=\"positive\">Approved</swc-status-light>\n *\n * @example\n * <swc-status-light variant=\"silver\">Supported in Edge</swc-status-light>\n */\nexport class StatusLight extends StatusLightBase {\n // ────────────────────\n // API OVERRIDES\n // ────────────────────\n\n /**\n * @internal\n */\n static override readonly VARIANTS_COLOR = STATUSLIGHT_VARIANTS_COLOR_S2;\n\n /**\n * @internal\n */\n static override readonly VARIANTS_SEMANTIC =\n STATUSLIGHT_VARIANTS_SEMANTIC_S2;\n\n /**\n * @internal\n */\n static override readonly VARIANTS = STATUSLIGHT_VARIANTS_S2;\n\n /**\n * Changes the color of the status dot. The variant list includes both semantic and non-semantic options.\n */\n @property({ type: String, reflect: true })\n public override variant: StatusLightVariant = 'info';\n\n // ──────────────────────────────\n // RENDERING & STYLING\n // ──────────────────────────────\n\n public static override get styles(): CSSResultArray {\n return [styles];\n }\n\n protected override render(): TemplateResult {\n return html`\n <div\n class=${classMap({\n ['swc-StatusLight']: true,\n [`swc-StatusLight--size${this.size?.toUpperCase()}`]:\n this.size != null,\n [`swc-StatusLight--${this.variant}`]:\n typeof this.variant !== 'undefined',\n })}\n >\n <slot></slot>\n </div>\n `;\n }\n}\n"],"names":["StatusLight","StatusLightBase","STATUSLIGHT_VARIANTS_COLOR_S2","STATUSLIGHT_VARIANTS_SEMANTIC_S2","STATUSLIGHT_VARIANTS_S2","styles","html","classMap","__decorateClass","property"],"mappings":";;;;;;;;;;AAqCO,MAAMA,UAAoBC,EAAgB;AAAA,EAA1C,cAAA;AAAA,UAAA,GAAA,SAAA,GAyBH,KAAgB,UAA8B;AAAA,EAAA;AAAA,EAjB9C,OAAA;AAAA,SAAyB,iBAAiBC;AAAA,EAAA;AAAA,EAK1C,OAAA;AAAA,SAAyB,oBACrBC;AAAA,EAAA;AAAA,EAKJ,OAAA;AAAA,SAAyB,WAAWC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA,EAYpC,WAA2B,SAAyB;AAChD,WAAO,CAACC,CAAM;AAAA,EAClB;AAAA,EAEmB,SAAyB;AACxC,WAAOC;AAAA;AAAA,wBAESC,EAAS;AAAA,MACZ,mBAAoB;AAAA,MACrB,CAAC,wBAAwB,KAAK,MAAM,aAAa,EAAE,GAC/C,KAAK,QAAQ;AAAA,MACjB,CAAC,oBAAoB,KAAK,OAAO,EAAE,GAC/B,OAAO,KAAK,UAAY;AAAA,IAAA,CAC/B,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,EAKd;AACJ;AAzBoBC,EAAA;AAAA,EADfC,EAAS,EAAE,MAAM,QAAQ,SAAS,IAAM;AAAA,GAxBhCT,EAyBO,WAAA,SAAA;"}
@@ -0,0 +1,7 @@
1
+ import { StatusLight } from './StatusLight.js';
2
+ export * from './StatusLight.js';
3
+ declare global {
4
+ interface HTMLElementTagNameMap {
5
+ 'swc-status-light': StatusLight;
6
+ }
7
+ }
@@ -0,0 +1,7 @@
1
+ import { defineElement as t } from "@spectrum-web-components/core/shared/base";
2
+ import { StatusLight as e } from "./StatusLight.js";
3
+ t("swc-status-light", e);
4
+ export {
5
+ e as StatusLight
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../components/status-light/index.ts"],"sourcesContent":["/**\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\nimport { defineElement } from '@spectrum-web-components/core/shared/base';\n\nimport { StatusLight } from './StatusLight.js';\n\nexport * from './StatusLight.js';\ndeclare global {\n interface HTMLElementTagNameMap {\n 'swc-status-light': StatusLight;\n }\n}\ndefineElement('swc-status-light', StatusLight);\n"],"names":["defineElement","StatusLight"],"mappings":";;AAqBAA,EAAc,oBAAoBC,CAAW;"}
@@ -0,0 +1,6 @@
1
+ import { css as t } from "lit";
2
+ const o = t`:host{display:inline-block;vertical-align:middle;align-self:start;justify-self:start;place-self:start}*,*:before{box-sizing:border-box}.swc-StatusLight{--_swc-statuslight-top-to-text: var( --swc-statuslight-top-to-text, var(--swc-component-top-to-text-100) );--_swc-statuslight-bottom-to-text: var( --swc-statuslight-bottom-to-text, var(--swc-component-bottom-to-text-100) );--_swc-statuslight-top-to-dot: var( --swc-statuslight-top-to-dot, var(--swc-status-light-top-to-dot-medium) );--_swc-statuslight-text-to-visual: var( --swc-statuslight-text-to-visual, var(--swc-status-light-text-to-visual-100) );display:flex;gap:var(--_swc-statuslight-text-to-visual);align-items:flex-start;min-block-size:var( --swc-statuslight-height, var(--swc-component-height-100) );padding-block-start:var(--_swc-statuslight-top-to-text);padding-block-end:var(--_swc-statuslight-bottom-to-text);font-size:var(--swc-statuslight-font-size, var(--swc-font-size-100));font-weight:400;font-family:Adobe Clean Spectrum VF,Adobe Clean,Source Sans Pro,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Ubuntu,Trebuchet MS,Lucida Grande,sans-serif;font-style:normal;line-height:1.3;color:var( --swc-statuslight-content-color, var(--swc-gray-800) )}.swc-StatusLight:lang(ja),.swc-StatusLight:lang(zh),.swc-StatusLight:lang(ko){line-height:1.5}.swc-StatusLight:before{--_swc-statuslight-dot-size: var( --swc-statuslight-dot-size, var(--swc-status-light-dot-size-medium) );content:\"\";box-sizing:border-box;flex-grow:0;flex-shrink:0;display:inline-block;inline-size:var(--_swc-statuslight-dot-size);block-size:var(--_swc-statuslight-dot-size);border-radius:50%;background-color:var(--swc-statuslight-dot-color);margin-block-start:calc(var(--_swc-statuslight-top-to-dot) - var(--_swc-statuslight-top-to-text))}:host([size=\"s\"]){--swc-statuslight-top-to-text: var(--swc-component-top-to-text-75);--swc-statuslight-bottom-to-text: var(--swc-component-bottom-to-text-75);--swc-statuslight-top-to-dot: var(--swc-status-light-top-to-dot-small);--swc-statuslight-text-to-visual: var(--swc-status-light-text-to-visual-75);--swc-statuslight-height: var(--swc-component-height-75);--swc-statuslight-dot-size: var(--swc-status-light-dot-size-small);--swc-statuslight-font-size: var(--swc-font-size-75)}:host([size=\"l\"]){--swc-statuslight-top-to-text: var(--swc-component-top-to-text-200);--swc-statuslight-bottom-to-text: var(--swc-component-bottom-to-text-200);--swc-statuslight-top-to-dot: var(--swc-status-light-top-to-dot-large);--swc-statuslight-text-to-visual: var(--swc-status-light-text-to-visual-200);--swc-statuslight-height: var(--swc-component-height-200);--swc-statuslight-dot-size: var(--swc-status-light-dot-size-large);--swc-statuslight-font-size: var(--swc-font-size-200)}:host([size=\"xl\"]){--swc-statuslight-top-to-text: var(--swc-component-top-to-text-300);--swc-statuslight-bottom-to-text: var(--swc-component-bottom-to-text-300);--swc-statuslight-top-to-dot: var(--swc-status-light-top-to-dot-extra-large);--swc-statuslight-text-to-visual: var(--swc-status-light-text-to-visual-300);--swc-statuslight-height: var(--swc-component-height-300);--swc-statuslight-dot-size: var(--swc-status-light-dot-size-extra-large);--swc-statuslight-font-size: var(--swc-font-size-300)}:host([variant=\"neutral\"]){--swc-statuslight-content-color: var(--swc-gray-600);--swc-statuslight-dot-color: var(--swc-neutral-visual-color)}:host([variant=\"info\"]){--swc-statuslight-dot-color: var(--swc-informative-visual-color)}:host([variant=\"negative\"]){--swc-statuslight-dot-color: var(--swc-negative-visual-color)}:host([variant=\"notice\"]){--swc-statuslight-dot-color: var(--swc-notice-visual-color)}:host([variant=\"positive\"]){--swc-statuslight-dot-color: var(--swc-positive-visual-color)}.swc-StatusLight--yellow{--swc-statuslight-dot-color: var(--swc-yellow-visual-color)}.swc-StatusLight--chartreuse{--swc-statuslight-dot-color: var(--swc-chartreuse-visual-color)}.swc-StatusLight--celery{--swc-statuslight-dot-color: var(--swc-celery-visual-color)}.swc-StatusLight--seafoam{--swc-statuslight-dot-color: var(--swc-seafoam-visual-color)}.swc-StatusLight--cyan{--swc-statuslight-dot-color: var(--swc-cyan-visual-color)}.swc-StatusLight--indigo{--swc-statuslight-dot-color: var(--swc-indigo-visual-color)}.swc-StatusLight--purple{--swc-statuslight-dot-color: var(--swc-purple-visual-color)}.swc-StatusLight--fuchsia{--swc-statuslight-dot-color: var(--swc-fuchsia-visual-color)}.swc-StatusLight--magenta{--swc-statuslight-dot-color: var(--swc-magenta-visual-color)}.swc-StatusLight--pink{--swc-statuslight-dot-color: var(--swc-pink-visual-color)}.swc-StatusLight--turquoise{--swc-statuslight-dot-color: var(--swc-turquoise-visual-color)}.swc-StatusLight--cinnamon{--swc-statuslight-dot-color: var(--swc-cinnamon-visual-color)}.swc-StatusLight--brown{--swc-statuslight-dot-color: var(--swc-brown-visual-color)}.swc-StatusLight--silver{--swc-statuslight-dot-color: var(--swc-silver-visual-color)}@media(forced-colors:active){.swc-StatusLight{--swc-statuslight-content-color: CanvasText;forced-color-adjust:none}.swc-StatusLight:before{border:1px solid}}`;
3
+ export {
4
+ o as default
5
+ };
6
+ //# sourceMappingURL=status-light.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status-light.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Copyright 2025 Adobe. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+ export {};
@@ -0,0 +1,29 @@
1
+ import { Locator, Page } from '@playwright/test';
2
+ /**
3
+ * Wait for a custom element to be fully defined and upgraded.
4
+ * This is more deterministic than waiting for visibility alone.
5
+ *
6
+ * @param page - Playwright page object
7
+ * @param tagName - Custom element tag name (e.g., 'sp-badge')
8
+ * @returns Promise that resolves when element is defined
9
+ */
10
+ export declare function waitForCustomElement(page: Page, tagName: string): Promise<void>;
11
+ /**
12
+ * Wait for Storybook story to be fully rendered.
13
+ * More deterministic than arbitrary timeouts.
14
+ *
15
+ * @param page - Playwright page object
16
+ * @param elementSelector - CSS selector for the element to wait for
17
+ * @returns The located element
18
+ */
19
+ export declare function waitForStoryReady(page: Page, elementSelector: string): Promise<Locator>;
20
+ /**
21
+ * Navigate to a Storybook story and wait for it to be ready.
22
+ * Combines navigation + deterministic waiting.
23
+ *
24
+ * @param page - Playwright page object
25
+ * @param storyId - Storybook story ID (e.g., 'badge--default')
26
+ * @param elementSelector - CSS selector for the main element to wait for
27
+ * @returns The located element
28
+ */
29
+ export declare function gotoStory(page: Page, storyId: string, elementSelector: string): Promise<Locator>;
File without changes
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Copyright 2025 Adobe. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+ /**
13
+ * Helper to render a Lit template and return the first element.
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * const badge = await fixture<Badge>(html`<swc-badge>Label</swc-badge>`);
18
+ * ```
19
+ *
20
+ * @param template - Lit html template to render
21
+ * @returns Promise that resolves to the rendered element
22
+ */
23
+ export declare function fixture<T extends HTMLElement>(template: unknown): Promise<T>;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Copyright 2025 Adobe. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+ declare const _default: import('vite').UserConfig;
13
+ export default _default;
package/package.json ADDED
@@ -0,0 +1,104 @@
1
+ {
2
+ "name": "@adobe/spectrum-wc",
3
+ "version": "0.0.2-snapshot-test.20260121133033",
4
+ "description": "Spectrum Web Components 2nd generation - rendering implementations",
5
+ "license": "Apache-2.0",
6
+ "author": "Adobe",
7
+ "homepage": "https://opensource.adobe.com/spectrum-web-components/",
8
+ "repository": {
9
+ "directory": "2nd-gen/packages/swc",
10
+ "type": "git",
11
+ "url": "https://github.com/adobe/spectrum-web-components.git"
12
+ },
13
+ "bugs": {
14
+ "url": "https://github.com/adobe/spectrum-web-components/issues"
15
+ },
16
+ "type": "module",
17
+ "exports": {
18
+ ".": {
19
+ "types": "./dist/index.d.ts",
20
+ "import": "./dist/index.js"
21
+ },
22
+ "./*": {
23
+ "types": "./dist/components/*/index.d.ts",
24
+ "import": "./dist/components/*/index.js"
25
+ },
26
+ "./components/*": {
27
+ "types": "./dist/components/*/index.d.ts",
28
+ "import": "./dist/components/*/index.js"
29
+ }
30
+ },
31
+ "main": "./dist/index.js",
32
+ "module": "./dist/index.js",
33
+ "files": [
34
+ "dist/"
35
+ ],
36
+ "scripts": {
37
+ "analyze": "cem analyze --config cem.config.js",
38
+ "analyze:watch": "cem analyze --config cem.config.js --watch",
39
+ "build": "vite build",
40
+ "clean": "rimraf dist",
41
+ "dev": "vite build --watch",
42
+ "dev:core": "yarn workspace @spectrum-web-components/core dev",
43
+ "storybook": "yarn analyze && storybook dev -p 6006",
44
+ "storybook:build": "yarn analyze && storybook build",
45
+ "stylesheets": "swc-tokens --outputType stylesheet --out ./stylesheets/tokens.css --prefix swc",
46
+ "test": "vitest --run",
47
+ "test:coverage": "vitest --coverage",
48
+ "test:ui": "vitest --ui",
49
+ "test:watch": "run-p dev:core vitest"
50
+ },
51
+ "types": "./dist/index.d.ts",
52
+ "dependencies": {
53
+ "@spectrum-web-components/core": "0.0.1",
54
+ "lit": "^2.5.0 || ^3.1.3"
55
+ },
56
+ "devDependencies": {
57
+ "@adobe/postcss-token": "workspace:*",
58
+ "@adobe/swc-tokens": "workspace:*",
59
+ "@axe-core/playwright": "4.10.2",
60
+ "@custom-elements-manifest/analyzer": "0.10.8",
61
+ "@storybook/addon-a11y": "10.0.3",
62
+ "@storybook/addon-designs": "11.0.1",
63
+ "@storybook/addon-docs": "10.0.3",
64
+ "@storybook/addon-vitest": "10.0.3",
65
+ "@storybook/test-runner": "0.23.0",
66
+ "@storybook/web-components-vite": "10.0.3",
67
+ "@types/react": "19.1.16",
68
+ "@types/react-dom": "19.1.9",
69
+ "@vitest/browser": "3.2.4",
70
+ "@vitest/coverage-v8": "3.2.4",
71
+ "@vitest/ui": "3.2.4",
72
+ "@wc-toolkit/storybook-helpers": "10.0.0",
73
+ "autoprefixer": "10.4.21",
74
+ "glob": "11.0.3",
75
+ "playwright": "1.53.1",
76
+ "postcss": "8.5.6",
77
+ "postcss-preset-env": "10.4.0",
78
+ "react": "19.1.1",
79
+ "react-dom": "19.1.1",
80
+ "rimraf": "6.0.1",
81
+ "storybook": "10.0.3",
82
+ "typescript": "5.9.2",
83
+ "vite": "7.1.7",
84
+ "vite-plugin-dts": "4.5.4",
85
+ "vite-plugin-lit-css": "2.2.1",
86
+ "vitest": "4.0.15"
87
+ },
88
+ "keywords": [
89
+ "design-system",
90
+ "spectrum",
91
+ "adobe",
92
+ "adobe-spectrum",
93
+ "web components",
94
+ "web-components",
95
+ "lit-element",
96
+ "lit-html",
97
+ "component",
98
+ "css"
99
+ ],
100
+ "customElements": ".storybook/custom-elements.json",
101
+ "publishConfig": {
102
+ "access": "public"
103
+ }
104
+ }