@redvars/peacock 3.0.0 → 3.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 (120) hide show
  1. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/LoaderUtils.d.ts +23 -0
  2. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/LoaderUtils.js +81 -0
  3. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/LoaderUtils.js.map +1 -0
  4. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/avatar/avatar.css.d.ts +1 -0
  5. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/avatar/avatar.css.js +41 -0
  6. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/avatar/avatar.css.js.map +1 -0
  7. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/avatar/avatar.d.ts +14 -0
  8. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/avatar/avatar.js +44 -0
  9. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/avatar/avatar.js.map +1 -0
  10. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/avatar/index.d.ts +1 -0
  11. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/avatar/index.js +2 -0
  12. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/avatar/index.js.map +1 -0
  13. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/datasource.d.ts +2 -0
  14. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/datasource.js +20 -0
  15. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/datasource.js.map +1 -0
  16. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/icon.css.d.ts +1 -0
  17. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/icon.css.js +22 -0
  18. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/icon.css.js.map +1 -0
  19. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/icon.d.ts +26 -0
  20. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/icon.js +119 -0
  21. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/icon.js.map +1 -0
  22. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/index.d.ts +1 -0
  23. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/index.js +2 -0
  24. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/index.js.map +1 -0
  25. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/p-icon.d.ts +3 -0
  26. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/p-icon.js +10 -0
  27. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/icon/p-icon.js.map +1 -0
  28. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/index.d.ts +2 -0
  29. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/index.js +3 -0
  30. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/index.js.map +1 -0
  31. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/peacock-loader.d.ts +1 -0
  32. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/peacock-loader.js +16 -0
  33. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/peacock-loader.js.map +1 -0
  34. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/utils.d.ts +3 -0
  35. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/utils.js +101 -0
  36. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/src/utils.js.map +1 -0
  37. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/test/icon.test.d.ts +1 -0
  38. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/test/icon.test.js +14 -0
  39. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/test/icon.test.js.map +1 -0
  40. package/.rollup.cache/E/git/redvars/peacock/components/dist/components/tsconfig.tsbuildinfo +1 -0
  41. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/LoaderUtils.d.ts +23 -0
  42. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/LoaderUtils.js +81 -0
  43. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/LoaderUtils.js.map +1 -0
  44. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/avatar.css.d.ts +1 -0
  45. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/avatar.css.js +41 -0
  46. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/avatar.css.js.map +1 -0
  47. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/avatar.d.ts +14 -0
  48. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/avatar.js +44 -0
  49. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/avatar.js.map +1 -0
  50. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/index.d.ts +1 -0
  51. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/index.js +2 -0
  52. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/avatar/index.js.map +1 -0
  53. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/datasource.d.ts +2 -0
  54. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/datasource.js +20 -0
  55. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/datasource.js.map +1 -0
  56. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/icon.css.d.ts +1 -0
  57. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/icon.css.js +22 -0
  58. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/icon.css.js.map +1 -0
  59. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/icon.d.ts +26 -0
  60. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/icon.js +119 -0
  61. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/icon.js.map +1 -0
  62. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/index.d.ts +1 -0
  63. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/index.js +2 -0
  64. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/index.js.map +1 -0
  65. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/p-icon.d.ts +3 -0
  66. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/p-icon.js +10 -0
  67. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/icon/p-icon.js.map +1 -0
  68. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/index.d.ts +2 -0
  69. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/index.js +3 -0
  70. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/index.js.map +1 -0
  71. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/peacock-loader.d.ts +1 -0
  72. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/peacock-loader.js +16 -0
  73. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/peacock-loader.js.map +1 -0
  74. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/utils.d.ts +3 -0
  75. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/utils.js +101 -0
  76. package/.rollup.cache/E/git/redvars/peacock/components/dist/src/utils.js.map +1 -0
  77. package/.rollup.cache/E/git/redvars/peacock/components/dist/test/icon.test.d.ts +1 -0
  78. package/.rollup.cache/E/git/redvars/peacock/components/dist/test/icon.test.js +14 -0
  79. package/.rollup.cache/E/git/redvars/peacock/components/dist/test/icon.test.js.map +1 -0
  80. package/.rollup.cache/E/git/redvars/peacock/components/dist/tsconfig.tsbuildinfo +1 -0
  81. package/custom-elements.md +16 -0
  82. package/demo/index.html +6 -1
  83. package/demo/int.html +29 -0
  84. package/dist/assets/styles/tokens.css +515 -0
  85. package/dist/component/Icon.js +174 -0
  86. package/dist/component/Icon.js.map +1 -0
  87. package/dist/component/avatar.js +88 -0
  88. package/dist/component/avatar.js.map +1 -0
  89. package/dist/icon-1wpxQtrZ.js +341 -0
  90. package/dist/icon-1wpxQtrZ.js.map +1 -0
  91. package/dist/index.js +89 -0
  92. package/dist/index.js.map +1 -0
  93. package/dist/peacock-loader.js +97 -0
  94. package/dist/peacock-loader.js.map +1 -0
  95. package/dist/src/LoaderUtils.js.map +1 -1
  96. package/dist/src/avatar/avatar.js +6 -1
  97. package/dist/src/avatar/avatar.js.map +1 -1
  98. package/dist/src/avatar/index.d.ts +1 -0
  99. package/dist/src/avatar/index.js +2 -0
  100. package/dist/src/avatar/index.js.map +1 -0
  101. package/dist/src/icon/icon.js +6 -1
  102. package/dist/src/icon/icon.js.map +1 -1
  103. package/dist/src/icon/index.d.ts +1 -0
  104. package/dist/src/icon/index.js +2 -0
  105. package/dist/src/icon/index.js.map +1 -0
  106. package/dist/src/icon/p-icon.js +6 -1
  107. package/dist/src/icon/p-icon.js.map +1 -1
  108. package/dist/src/peacock-loader.js +1 -1
  109. package/dist/src/peacock-loader.js.map +1 -1
  110. package/dist/tsconfig.tsbuildinfo +1 -1
  111. package/dist/utils-CSwoJIcG.js +171 -0
  112. package/dist/utils-CSwoJIcG.js.map +1 -0
  113. package/package.json +13 -4
  114. package/rollup.config.js +35 -15
  115. package/src/LoaderUtils.ts +1 -0
  116. package/src/avatar/demo/index.html +2 -2
  117. package/src/avatar/index.ts +1 -0
  118. package/src/icon/index.ts +1 -0
  119. package/src/peacock-loader.ts +1 -1
  120. package/tsconfig.json +1 -1
@@ -0,0 +1,174 @@
1
+ import { n, i, A, t as t$1, E, e as e$1, c as createCacheFetch, a as i$1, _ as __decorate, b as i$2, d as b, s as sanitizeSvg } from '../utils-CSwoJIcG.js';
2
+
3
+ /**
4
+ * @license
5
+ * Copyright 2017 Google LLC
6
+ * SPDX-License-Identifier: BSD-3-Clause
7
+ */function r(r){return n({...r,state:true,attribute:false})}
8
+
9
+ /**
10
+ * @license
11
+ * Copyright 2017 Google LLC
12
+ * SPDX-License-Identifier: BSD-3-Clause
13
+ */class e extends i{constructor(i){if(super(i),this.it=A,i.type!==t$1.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(r){if(r===A||null==r)return this._t=void 0,this.it=r;if(r===E)return r;if("string"!=typeof r)throw Error(this.constructor.directiveName+"() called with a non-string value");if(r===this.it)return this._t;this.it=r;const s=[r];return s.raw=s,this._t={_$litType$:this.constructor.resultType,strings:s,values:[]}}}e.directiveName="unsafeHTML",e.resultType=1;
14
+
15
+ /**
16
+ * @license
17
+ * Copyright 2017 Google LLC
18
+ * SPDX-License-Identifier: BSD-3-Clause
19
+ */class t extends e{}t.directiveName="unsafeSVG",t.resultType=2;const o=e$1(t);
20
+
21
+ const PROVIDERS = {
22
+ 'material-symbols': (name) => `https://cdn.jsdelivr.net/npm/@material-symbols/svg-500@0.40.1/outlined/${name}.svg`,
23
+ carbon: (name) => `https://cdn.jsdelivr.net/npm/@carbon/icons@11.41.0/svg/32/${name}.svg`,
24
+ };
25
+ const cacheFetch = await createCacheFetch('svg-cache');
26
+ async function fetchSVG(url) {
27
+ if (!url)
28
+ return '';
29
+ return cacheFetch(url);
30
+ }
31
+ async function fetchIcon(name, provider = 'material-symbols') {
32
+ if (!name)
33
+ return '';
34
+ if (!PROVIDERS[provider]) {
35
+ throw new Error(`Provider '${provider}' not found`);
36
+ }
37
+ return fetchSVG(PROVIDERS[provider](name));
38
+ }
39
+
40
+ const styles = i$1 `
41
+ :host {
42
+ display: inline-block;
43
+ line-height: 0;
44
+ --icon-size: inherit;
45
+ --icon-color: inherit;
46
+ }
47
+
48
+ .icon {
49
+ display: inline-block;
50
+ height: var(--icon-size, 1rem);
51
+ width: var(--icon-size, 1rem);
52
+
53
+ svg {
54
+ fill: var(--icon-color);
55
+ height: 100%;
56
+ width: 100%;
57
+ }
58
+ }
59
+ `;
60
+
61
+ /**
62
+ * @summary Icons are visual symbols used to represent ideas, objects, or actions.
63
+ *
64
+ * @cssprop --icon-color - Controls the color of the icon.
65
+ * @cssprop [--icon-size=1rem] - Controls the size of the icon. Defaults to "1rem"
66
+ */
67
+ class Icon extends i$2 {
68
+ constructor() {
69
+ super(...arguments);
70
+ this.name = 'home';
71
+ this.provider = 'material-symbols';
72
+ this.svgContent = '';
73
+ // loading + error states for consumers/tests
74
+ this.loading = false;
75
+ this.error = null;
76
+ // token to avoid race conditions when multiple fetches overlap
77
+ this._fetchId = 0;
78
+ }
79
+ firstUpdated() {
80
+ // perform initial fetch once component is connected and rendered
81
+ this.__scheduleUpdate();
82
+ }
83
+ updated(changedProperties) {
84
+ // only refetch when name or src changed
85
+ if (changedProperties.has('name') || changedProperties.has('src')) {
86
+ this.__scheduleUpdate();
87
+ }
88
+ }
89
+ render() {
90
+ // accessible wrapper; consumers can provide a fallback via <slot name="fallback">.
91
+ return b ` <div class="icon">
92
+ ${this.svgContent
93
+ ? o(this.svgContent)
94
+ : b `<slot name="fallback"></slot>`}
95
+ </div>`;
96
+ }
97
+ // small debounce to coalesce rapid changes (50ms)
98
+ __scheduleUpdate() {
99
+ if (this._debounceTimer) {
100
+ clearTimeout(this._debounceTimer);
101
+ }
102
+ // @ts-ignore - setTimeout in DOM returns number
103
+ this._debounceTimer = window.setTimeout(() => this.__updateSvg(), 50);
104
+ }
105
+ /**
106
+ * @internal
107
+ */
108
+ async __updateSvg() {
109
+ this._fetchId += 1;
110
+ const currentId = this._fetchId;
111
+ this.loading = true;
112
+ this.error = null;
113
+ try {
114
+ let raw;
115
+ if (this.name) {
116
+ raw = await fetchIcon(this.name, this.provider);
117
+ }
118
+ else if (this.src) {
119
+ raw = await fetchSVG(this.src);
120
+ }
121
+ else {
122
+ raw = '';
123
+ }
124
+ // If another fetch started after this one, ignore this result
125
+ if (currentId !== this._fetchId)
126
+ return;
127
+ if (raw) {
128
+ this.svgContent = sanitizeSvg(raw);
129
+ }
130
+ else {
131
+ this.svgContent = '';
132
+ }
133
+ }
134
+ catch (err) {
135
+ // capture and surface error, but avoid throwing
136
+ this.error = err instanceof Error ? err : new Error(String(err));
137
+ this.svgContent = '';
138
+ // bubble an event so consumers can react
139
+ this.dispatchEvent(new CustomEvent('icon-error', {
140
+ detail: { name: this.name, src: this.src, error: this.error },
141
+ bubbles: true,
142
+ composed: true,
143
+ }));
144
+ }
145
+ finally {
146
+ // ensure loading is cleared unless another fetch started
147
+ if (currentId === this._fetchId) {
148
+ this.loading = false;
149
+ }
150
+ }
151
+ }
152
+ }
153
+ Icon.styles = [styles];
154
+ __decorate([
155
+ n({ type: String, reflect: true })
156
+ ], Icon.prototype, "name", void 0);
157
+ __decorate([
158
+ n({ type: String, reflect: true })
159
+ ], Icon.prototype, "src", void 0);
160
+ __decorate([
161
+ n({ type: String })
162
+ ], Icon.prototype, "provider", void 0);
163
+ __decorate([
164
+ r()
165
+ ], Icon.prototype, "svgContent", void 0);
166
+ __decorate([
167
+ r()
168
+ ], Icon.prototype, "loading", void 0);
169
+ __decorate([
170
+ r()
171
+ ], Icon.prototype, "error", void 0);
172
+
173
+ export { Icon };
174
+ //# sourceMappingURL=Icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Icon.js","sources":["../../node_modules/@lit/reactive-element/decorators/state.js","../../node_modules/lit-html/directives/unsafe-html.js","../../node_modules/lit-html/directives/unsafe-svg.js","../../../src/icon/datasource.ts","../../../src/icon/icon.css.ts","../../../src/icon/icon.ts"],"sourcesContent":["import{property as t}from\"./property.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */function r(r){return t({...r,state:!0,attribute:!1})}export{r as state};\n//# sourceMappingURL=state.js.map\n","import{nothing as t,noChange as i}from\"../lit-html.js\";import{directive as r,Directive as s,PartType as n}from\"../directive.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class e extends s{constructor(i){if(super(i),this.it=t,i.type!==n.CHILD)throw Error(this.constructor.directiveName+\"() can only be used in child bindings\")}render(r){if(r===t||null==r)return this._t=void 0,this.it=r;if(r===i)return r;if(\"string\"!=typeof r)throw Error(this.constructor.directiveName+\"() called with a non-string value\");if(r===this.it)return this._t;this.it=r;const s=[r];return s.raw=s,this._t={_$litType$:this.constructor.resultType,strings:s,values:[]}}}e.directiveName=\"unsafeHTML\",e.resultType=1;const o=r(e);export{e as UnsafeHTMLDirective,o as unsafeHTML};\n//# sourceMappingURL=unsafe-html.js.map\n","import{directive as s}from\"../directive.js\";import{UnsafeHTMLDirective as e}from\"./unsafe-html.js\";\n/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */class t extends e{}t.directiveName=\"unsafeSVG\",t.resultType=2;const o=s(t);export{o as unsafeSVG};\n//# sourceMappingURL=unsafe-svg.js.map\n","import { createCacheFetch } from '../utils.js';\n\nconst PROVIDERS: Record<string, (name: string) => string> = {\n 'material-symbols': (name: string) =>\n `https://cdn.jsdelivr.net/npm/@material-symbols/svg-500@0.40.1/outlined/${name}.svg`,\n carbon: (name: string) =>\n `https://cdn.jsdelivr.net/npm/@carbon/icons@11.41.0/svg/32/${name}.svg`,\n};\n\nconst cacheFetch = await createCacheFetch('svg-cache');\n\nexport async function fetchSVG(url: string) {\n if (!url) return '';\n return cacheFetch(url);\n}\n\nexport async function fetchIcon(\n name: string,\n provider: string = 'material-symbols',\n) {\n if (!name) return '';\n\n if (!PROVIDERS[provider]) {\n throw new Error(`Provider '${provider}' not found`);\n }\n\n return fetchSVG(PROVIDERS[provider](name));\n}\n","import { css } from 'lit';\n\nexport const styles = css`\n :host {\n display: inline-block;\n line-height: 0;\n --icon-size: inherit;\n --icon-color: inherit;\n }\n\n .icon {\n display: inline-block;\n height: var(--icon-size, 1rem);\n width: var(--icon-size, 1rem);\n\n svg {\n fill: var(--icon-color);\n height: 100%;\n width: 100%;\n }\n }\n`;\n","import { html, LitElement } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { unsafeSVG } from 'lit/directives/unsafe-svg.js';\nimport { fetchIcon, fetchSVG } from './datasource.js';\nimport { sanitizeSvg } from '../utils.js';\nimport { styles } from './icon.css.js';\n\n/**\n * @summary Icons are visual symbols used to represent ideas, objects, or actions.\n *\n * @cssprop --icon-color - Controls the color of the icon.\n * @cssprop [--icon-size=1rem] - Controls the size of the icon. Defaults to \"1rem\"\n */\nexport class Icon extends LitElement {\n static styles = [styles];\n\n @property({ type: String, reflect: true }) name?: string = 'home';\n\n @property({ type: String, reflect: true }) src?: string;\n\n @property({ type: String }) provider?: 'material-symbols' | 'carbon' =\n 'material-symbols';\n\n @state()\n private svgContent: string = '';\n\n // loading + error states for consumers/tests\n @state()\n private loading: boolean = false;\n\n @state()\n private error: Error | null = null;\n\n // token to avoid race conditions when multiple fetches overlap\n private _fetchId = 0;\n\n // optional debounce for rapid property changes\n private _debounceTimer: number | undefined;\n\n firstUpdated() {\n // perform initial fetch once component is connected and rendered\n this.__scheduleUpdate();\n }\n\n updated(changedProperties: any) {\n // only refetch when name or src changed\n if (changedProperties.has('name') || changedProperties.has('src')) {\n this.__scheduleUpdate();\n }\n }\n\n render() {\n // accessible wrapper; consumers can provide a fallback via <slot name=\"fallback\">.\n return html` <div class=\"icon\">\n ${this.svgContent\n ? unsafeSVG(this.svgContent)\n : html`<slot name=\"fallback\"></slot>`}\n </div>`;\n }\n\n // small debounce to coalesce rapid changes (50ms)\n private __scheduleUpdate() {\n if (this._debounceTimer) {\n clearTimeout(this._debounceTimer as any);\n }\n // @ts-ignore - setTimeout in DOM returns number\n this._debounceTimer = window.setTimeout(() => this.__updateSvg(), 50);\n }\n\n /**\n * @internal\n */\n private async __updateSvg() {\n this._fetchId += 1;\n const currentId = this._fetchId;\n this.loading = true;\n this.error = null;\n\n try {\n let raw: string | undefined;\n\n if (this.name) {\n raw = await fetchIcon(this.name, this.provider);\n } else if (this.src) {\n raw = await fetchSVG(this.src);\n } else {\n raw = '';\n }\n\n // If another fetch started after this one, ignore this result\n if (currentId !== this._fetchId) return;\n\n if (raw) {\n this.svgContent = sanitizeSvg(raw);\n } else {\n this.svgContent = '';\n }\n } catch (err: any) {\n // capture and surface error, but avoid throwing\n this.error = err instanceof Error ? err : new Error(String(err));\n this.svgContent = '';\n // bubble an event so consumers can react\n this.dispatchEvent(\n new CustomEvent('icon-error', {\n detail: { name: this.name, src: this.src, error: this.error },\n bubbles: true,\n composed: true,\n }),\n );\n } finally {\n // ensure loading is cleared unless another fetch started\n if (currentId === this._fetchId) {\n this.loading = false;\n }\n }\n }\n}\n"],"names":["t","s","n","i","css","LitElement","html","unsafeSVG","property","state"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -0,0 +1,88 @@
1
+ import { e as e$1, i, t, E, r, g as getTypography, a as i$1, _ as __decorate, n, b as i$2, d as b } from '../utils-CSwoJIcG.js';
2
+
3
+ /**
4
+ * @license
5
+ * Copyright 2018 Google LLC
6
+ * SPDX-License-Identifier: BSD-3-Clause
7
+ */const e=e$1(class extends i{constructor(t$1){if(super(t$1),t$1.type!==t.ATTRIBUTE||"class"!==t$1.name||t$1.strings?.length>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return " "+Object.keys(t).filter(s=>t[s]).join(" ")+" "}update(s,[i]){if(void 0===this.st){this.st=new Set,void 0!==s.strings&&(this.nt=new Set(s.strings.join(" ").split(/\s/).filter(t=>""!==t)));for(const t in i)i[t]&&!this.nt?.has(t)&&this.st.add(t);return this.render(i)}const r=s.element.classList;for(const t of this.st)t in i||(r.remove(t),this.st.delete(t));for(const t in i){const s=!!i[t];s===this.st.has(t)||this.nt?.has(t)||(s?(r.add(t),this.st.add(t)):(r.remove(t),this.st.delete(t)));}return E}});
8
+
9
+ const styles = i$1 `
10
+ :host {
11
+ display: inline-block;
12
+ pointer-events: none;
13
+ --avatar-size: 2rem;
14
+ --avatar-background-color: var(--color-primary);
15
+ --avatar-text-color: var(--color-on-primary);
16
+ --avatar-border-radius: var(--global-avatar-border-radius);
17
+ }
18
+
19
+ .avatar-container {
20
+ display: flex;
21
+ align-items: center;
22
+ gap: var(--spacing-050);
23
+ line-height: 0;
24
+ }
25
+
26
+ .avatar {
27
+ border-radius: var(--avatar-border-radius);
28
+ display: flex;
29
+ justify-content: center;
30
+ align-items: center;
31
+ color: var(--avatar-text-color);
32
+ width: var(--avatar-size);
33
+ height: var(--avatar-size);
34
+ ${r(getTypography('body-large-emphasized'))}
35
+ background-color: var(--avatar-background-color);
36
+
37
+ font-size: calc(var(--avatar-size) * 0.4);
38
+
39
+ .image {
40
+ width: 100%;
41
+ height: 100%;
42
+ overflow: hidden;
43
+ border-radius: inherit;
44
+ }
45
+ }
46
+ `;
47
+
48
+ /**
49
+ * @summary Icons are visual symbols used to represent ideas, objects, or actions.
50
+ *
51
+ * @cssprop --icon-color - Controls the color of the icon.
52
+ * @cssprop --icon-size - Controls the size of the icon.
53
+ */
54
+ class Avatar extends i$2 {
55
+ constructor() {
56
+ super(...arguments);
57
+ this.name = '';
58
+ }
59
+ render() {
60
+ return b `<div class="avatar-container">
61
+ <div
62
+ class=${e({
63
+ avatar: true,
64
+ initials: !this.src,
65
+ image: !!this.src,
66
+ })}
67
+ >
68
+ ${this.src
69
+ ? b `<img class="image" src=${this.src} alt=${this.name} />`
70
+ : b `<div class="initials">${this.__getInitials()}</div>`}
71
+ </div>
72
+ </div>`;
73
+ }
74
+ __getInitials() {
75
+ const [first = '', last = ''] = this.name.split(' ');
76
+ return `${first.charAt(0)}${last.charAt(0)}`.toUpperCase();
77
+ }
78
+ }
79
+ Avatar.styles = [styles];
80
+ __decorate([
81
+ n({ type: String, reflect: true })
82
+ ], Avatar.prototype, "name", void 0);
83
+ __decorate([
84
+ n({ type: String, reflect: true })
85
+ ], Avatar.prototype, "src", void 0);
86
+
87
+ export { Avatar };
88
+ //# sourceMappingURL=avatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.js","sources":["../../node_modules/lit-html/directives/class-map.js","../../../src/avatar/avatar.css.ts","../../../src/avatar/avatar.ts"],"sourcesContent":["import{noChange as t}from\"../lit-html.js\";import{directive as s,Directive as i,PartType as r}from\"../directive.js\";\n/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */const e=s(class extends i{constructor(t){if(super(t),t.type!==r.ATTRIBUTE||\"class\"!==t.name||t.strings?.length>2)throw Error(\"`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.\")}render(t){return\" \"+Object.keys(t).filter(s=>t[s]).join(\" \")+\" \"}update(s,[i]){if(void 0===this.st){this.st=new Set,void 0!==s.strings&&(this.nt=new Set(s.strings.join(\" \").split(/\\s/).filter(t=>\"\"!==t)));for(const t in i)i[t]&&!this.nt?.has(t)&&this.st.add(t);return this.render(i)}const r=s.element.classList;for(const t of this.st)t in i||(r.remove(t),this.st.delete(t));for(const t in i){const s=!!i[t];s===this.st.has(t)||this.nt?.has(t)||(s?(r.add(t),this.st.add(t)):(r.remove(t),this.st.delete(t)))}return t}});export{e as classMap};\n//# sourceMappingURL=class-map.js.map\n","import { css, unsafeCSS } from 'lit';\nimport { getTypography } from '../utils.js';\n\nexport const styles = css`\n :host {\n display: inline-block;\n pointer-events: none;\n --avatar-size: 2rem;\n --avatar-background-color: var(--color-primary);\n --avatar-text-color: var(--color-on-primary);\n --avatar-border-radius: var(--global-avatar-border-radius);\n }\n\n .avatar-container {\n display: flex;\n align-items: center;\n gap: var(--spacing-050);\n line-height: 0;\n }\n\n .avatar {\n border-radius: var(--avatar-border-radius);\n display: flex;\n justify-content: center;\n align-items: center;\n color: var(--avatar-text-color);\n width: var(--avatar-size);\n height: var(--avatar-size);\n ${unsafeCSS(getTypography('body-large-emphasized'))}\n background-color: var(--avatar-background-color);\n\n font-size: calc(var(--avatar-size) * 0.4);\n\n .image {\n width: 100%;\n height: 100%;\n overflow: hidden;\n border-radius: inherit;\n }\n }\n`;\n","import { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { styles } from './avatar.css.js';\n\n/**\n * @summary Icons are visual symbols used to represent ideas, objects, or actions.\n *\n * @cssprop --icon-color - Controls the color of the icon.\n * @cssprop --icon-size - Controls the size of the icon.\n */\nexport class Avatar extends LitElement {\n static styles = [styles];\n\n @property({ type: String, reflect: true }) name: string = '';\n\n @property({ type: String, reflect: true }) src?: string;\n\n render() {\n return html`<div class=\"avatar-container\">\n <div\n class=${classMap({\n avatar: true,\n initials: !this.src,\n image: !!this.src,\n })}\n >\n ${this.src\n ? html`<img class=\"image\" src=${this.src} alt=${this.name} />`\n : html`<div class=\"initials\">${this.__getInitials()}</div>`}\n </div>\n </div>`;\n }\n\n private __getInitials() {\n const [first = '', last = ''] = this.name.split(' ');\n return `${first.charAt(0)}${last.charAt(0)}`.toUpperCase();\n }\n}\n"],"names":["s","t","r","css","unsafeCSS","LitElement","html","classMap","property"],"mappings":";;AACA;AACA;AACA;AACA;AACA,GAAG,MAAM,CAAC,CAACA,GAAC,CAAC,cAAc,CAAC,CAAC,WAAW,CAACC,GAAC,CAAC,CAAC,GAAG,KAAK,CAACA,GAAC,CAAC,CAACA,GAAC,CAAC,IAAI,GAAGC,CAAC,CAAC,SAAS,EAAE,OAAO,GAAGD,GAAC,CAAC,IAAI,EAAEA,GAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,oGAAoG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,OAAOA,CAAC,CAAC,CAAC,CAAC;;ACFpuB,MAAM,MAAM,GAAGE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBnB,IAAA,EAAAC,CAAS,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;;;;;;;;;;;;CAYtD;;ACnCD;;;;;AAKG;AACG,MAAO,MAAO,SAAQC,GAAU,CAAA;AAAtC,IAAA,WAAA,GAAA;;QAG6C,IAAA,CAAA,IAAI,GAAW,EAAE;IAwB9D;IApBE,MAAM,GAAA;AACJ,QAAA,OAAOC,CAAI,CAAA,CAAA;;AAEC,cAAA,EAAAC,CAAQ,CAAC;AACf,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,QAAQ,EAAE,CAAC,IAAI,CAAC,GAAG;AACnB,YAAA,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG;SAClB,CAAC;;AAEA,QAAA,EAAA,IAAI,CAAC;cACHD,CAAI,CAAA,CAAA,uBAAA,EAA0B,IAAI,CAAC,GAAG,CAAA,KAAA,EAAQ,IAAI,CAAC,IAAI,CAAA,GAAA;cACvDA,CAAI,CAAA,CAAA,sBAAA,EAAyB,IAAI,CAAC,aAAa,EAAE,CAAA,MAAA,CAAQ;;WAE1D;IACT;IAEQ,aAAa,GAAA;AACnB,QAAA,MAAM,CAAC,KAAK,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;AACpD,QAAA,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA,EAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE;IAC5D;;AAzBO,MAAA,CAAA,MAAM,GAAG,CAAC,MAAM,CAAC;AAEmB,UAAA,CAAA;IAA1CE,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;AAAoB,CAAA,EAAA,MAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AAElB,UAAA,CAAA;IAA1CA,CAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;AAAe,CAAA,EAAA,MAAA,CAAA,SAAA,EAAA,KAAA,EAAA,MAAA,CAAA;;;;","x_google_ignoreList":[0]}