@redvars/peacock 3.2.10 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{PeacockComponent-CxJc63xj.js → IndividualComponent-tDnXrOLV.js} +3 -3
- package/dist/IndividualComponent-tDnXrOLV.js.map +1 -0
- package/dist/{button-DaL4va7Q.js → button-BGFJfbT2.js} +22 -35
- package/dist/button-BGFJfbT2.js.map +1 -0
- package/dist/button-group.js +8 -8
- package/dist/button-group.js.map +1 -1
- package/dist/button.js +6 -5
- package/dist/button.js.map +1 -1
- package/dist/chart-donut.js +307 -0
- package/dist/chart-donut.js.map +1 -0
- package/dist/chart-doughnut.js +307 -0
- package/dist/chart-doughnut.js.map +1 -0
- package/dist/chart-pie.js +259 -0
- package/dist/chart-pie.js.map +1 -0
- package/dist/{class-map-BvQRv7eW.js → class-map-DpeNtqCn.js} +2 -2
- package/dist/{class-map-BvQRv7eW.js.map → class-map-DpeNtqCn.js.map} +1 -1
- package/dist/clock.js +5 -6
- package/dist/clock.js.map +1 -1
- package/dist/code-editor.js +37 -24
- package/dist/code-editor.js.map +1 -1
- package/dist/code-highlighter.js +21 -7
- package/dist/code-highlighter.js.map +1 -1
- package/dist/custom-elements-jsdocs.json +5377 -3122
- package/dist/custom-elements.json +5527 -3940
- package/dist/{dispatch-event-utils-vbdiOSeC.js → dispatch-event-utils-B4odODQf.js} +2 -15
- package/dist/dispatch-event-utils-B4odODQf.js.map +1 -0
- package/dist/index.js +13 -9
- package/dist/index.js.map +1 -1
- package/dist/number-counter.js +12 -10
- package/dist/number-counter.js.map +1 -1
- package/dist/{observe-theme-change-NneLARW8.js → observe-theme-change-BISF-Gl5.js} +2 -2
- package/dist/{observe-theme-change-NneLARW8.js.map → observe-theme-change-BISF-Gl5.js.map} +1 -1
- package/dist/peacock-loader.js +124 -62
- package/dist/peacock-loader.js.map +1 -1
- package/dist/query-QBcUV-L_.js +15 -0
- package/dist/query-QBcUV-L_.js.map +1 -0
- package/dist/{image-v3BujlY5.js → slider-Dk9CFWTG.js} +1606 -327
- package/dist/slider-Dk9CFWTG.js.map +1 -0
- package/dist/src/IndividualComponent.d.ts +1 -0
- package/dist/src/accordion/{accordion-item/accordion-item.d.ts → accordion-item.d.ts} +4 -4
- package/dist/src/accordion/{accordion/accordion.d.ts → accordion.d.ts} +6 -6
- package/dist/src/accordion/{accordion-item/index.d.ts → index.d.ts} +1 -0
- package/dist/src/avatar/avatar.d.ts +2 -2
- package/dist/src/badge/badge.d.ts +2 -2
- package/dist/src/breadcrumb/breadcrumb/breadcrumb.d.ts +7 -8
- package/dist/src/breadcrumb/breadcrumb-item/breadcrumb-item.d.ts +3 -3
- package/dist/src/button/button/button.d.ts +2 -2
- package/dist/src/button/button-group/button-group.d.ts +5 -5
- package/dist/src/button/icon-button/icon-button.d.ts +2 -2
- package/dist/src/chart-donut/chart-donut.d.ts +53 -0
- package/dist/src/chart-donut/index.d.ts +1 -0
- package/dist/src/chart-doughnut/chart-doughnut.d.ts +53 -0
- package/dist/src/chart-doughnut/index.d.ts +1 -0
- package/dist/src/chart-pie/chart-pie.d.ts +50 -0
- package/dist/src/chart-pie/index.d.ts +1 -0
- package/dist/src/checkbox/checkbox.d.ts +3 -6
- package/dist/src/chip/chip/chip.d.ts +4 -4
- package/dist/src/chip/tag/tag.d.ts +3 -3
- package/dist/src/clock/clock.d.ts +3 -4
- package/dist/src/code-editor/code-editor.d.ts +11 -9
- package/dist/src/container/container.d.ts +6 -11
- package/dist/src/date-picker/date-picker.d.ts +3 -3
- package/dist/src/divider/divider.d.ts +2 -2
- package/dist/src/elevation/elevation.d.ts +2 -2
- package/dist/src/empty-state/empty-state.d.ts +9 -2
- package/dist/src/field/field.d.ts +17 -0
- package/dist/src/focus-ring/focus-ring.d.ts +1 -1
- package/dist/src/icon/icon.d.ts +2 -2
- package/dist/src/image/image.d.ts +4 -12
- package/dist/src/index.d.ts +5 -1
- package/dist/src/input/input.d.ts +2 -2
- package/dist/src/link/link.d.ts +4 -5
- package/dist/src/menu/menu/menu.d.ts +16 -0
- package/dist/src/menu/menu-item/menu-item.d.ts +12 -0
- package/dist/src/menu/menu-list/menu-list.d.ts +15 -0
- package/dist/src/number-counter/number-counter.d.ts +9 -7
- package/dist/src/number-field/number-field.d.ts +1 -1
- package/dist/src/popover/index.d.ts +1 -1
- package/dist/src/progress/circular-progress/circular-progress.d.ts +3 -3
- package/dist/src/progress/linear-progress/linear-progress.d.ts +3 -3
- package/dist/src/ripple/ripple.d.ts +60 -4
- package/dist/src/skeleton/skeleton.d.ts +6 -5
- package/dist/src/slider/index.d.ts +1 -0
- package/dist/src/slider/slider.d.ts +52 -0
- package/dist/src/spinner/spinner.d.ts +2 -2
- package/dist/src/switch/switch.d.ts +2 -2
- package/dist/src/tabs/index.d.ts +4 -0
- package/dist/src/tabs/tab-group.d.ts +41 -0
- package/dist/src/tabs/tab-panel.d.ts +21 -0
- package/dist/src/tabs/tab.d.ts +58 -0
- package/dist/src/tabs/tabs.d.ts +27 -0
- package/dist/src/textarea/textarea.d.ts +3 -3
- package/dist/src/time-picker/time-picker.d.ts +3 -3
- package/dist/src/{popover/tooltip → tooltip}/tooltip.d.ts +6 -3
- package/dist/{state-B09bP3XH.js → state-8v48Exzh.js} +2 -2
- package/dist/{state-B09bP3XH.js.map → state-8v48Exzh.js.map} +1 -1
- package/dist/{style-map-B8xgVEc9.js → style-map-CfNHEkQp.js} +2 -2
- package/dist/{style-map-B8xgVEc9.js.map → style-map-CfNHEkQp.js.map} +1 -1
- package/dist/transform-DRuHEvar.js +3312 -0
- package/dist/transform-DRuHEvar.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/{unsafe-html-B-dV3Jps.js → unsafe-html-CV6Je6HL.js} +2 -2
- package/dist/{unsafe-html-B-dV3Jps.js.map → unsafe-html-CV6Je6HL.js.map} +1 -1
- package/package.json +3 -1
- package/readme.md +2 -2
- package/src/{PeacockComponent.ts → IndividualComponent.ts} +1 -1
- package/src/accordion/{accordion-item/accordion-item.scss → accordion-item.scss} +1 -1
- package/src/accordion/{accordion-item/accordion-item.ts → accordion-item.ts} +5 -5
- package/src/accordion/{accordion/accordion.scss → accordion.scss} +2 -1
- package/src/accordion/{accordion/accordion.ts → accordion.ts} +6 -6
- package/src/accordion/{accordion-item/index.ts → index.ts} +2 -0
- package/src/avatar/avatar.ts +2 -2
- package/src/badge/badge.ts +2 -2
- package/src/breadcrumb/breadcrumb/breadcrumb.ts +7 -8
- package/src/breadcrumb/breadcrumb-item/breadcrumb-item.ts +3 -3
- package/src/button/BaseButton.ts +1 -1
- package/src/button/button/button.scss +9 -23
- package/src/button/button/button.ts +8 -8
- package/src/button/button-group/button-group.ts +7 -7
- package/src/button/icon-button/icon-button.ts +8 -8
- package/src/chart-donut/chart-donut.scss +37 -0
- package/src/chart-donut/chart-donut.ts +287 -0
- package/src/chart-donut/demo/index.html +51 -0
- package/src/chart-donut/index.ts +1 -0
- package/src/chart-doughnut/chart-donut.scss +37 -0
- package/src/chart-doughnut/chart-doughnut.ts +287 -0
- package/src/chart-doughnut/demo/index.html +51 -0
- package/src/chart-doughnut/index.ts +1 -0
- package/src/chart-pie/chart-pie.scss +27 -0
- package/src/chart-pie/chart-pie.ts +256 -0
- package/src/chart-pie/demo/index.html +51 -0
- package/src/chart-pie/index.ts +1 -0
- package/src/checkbox/checkbox.ts +3 -6
- package/src/chip/chip/chip.ts +6 -6
- package/src/chip/tag/tag.ts +6 -6
- package/src/clock/clock.ts +5 -6
- package/src/code-editor/code-editor.scss +3 -5
- package/src/code-editor/code-editor.ts +30 -15
- package/src/code-highlighter/code-highlighter.ts +19 -4
- package/src/container/container.ts +6 -11
- package/src/date-picker/date-picker.ts +7 -7
- package/src/divider/divider.ts +2 -2
- package/src/elevation/elevation.ts +2 -2
- package/src/empty-state/empty-state.ts +10 -3
- package/src/field/field.scss +4 -4
- package/src/field/field.ts +19 -2
- package/src/focus-ring/focus-ring.scss +2 -1
- package/src/focus-ring/focus-ring.ts +1 -1
- package/src/icon/icon.ts +2 -2
- package/src/icon/p-icon.ts +1 -1
- package/src/image/image.ts +4 -12
- package/src/index.ts +6 -2
- package/src/input/input.ts +6 -6
- package/src/link/link.ts +4 -5
- package/src/menu/menu/menu.ts +16 -0
- package/src/menu/menu-item/menu-item-colors.scss +2 -2
- package/src/menu/menu-item/menu-item.ts +14 -2
- package/src/menu/menu-list/menu-list.ts +16 -1
- package/src/number-counter/demo/index.html +1 -1
- package/src/number-counter/number-counter.ts +11 -9
- package/src/number-field/number-field.ts +7 -7
- package/src/peacock-loader.ts +71 -44
- package/src/popover/index.ts +1 -1
- package/src/progress/circular-progress/circular-progress.scss +1 -1
- package/src/progress/circular-progress/circular-progress.ts +3 -3
- package/src/progress/linear-progress/linear-progress.ts +3 -3
- package/src/ripple/ripple.ts +478 -94
- package/src/skeleton/skeleton.ts +6 -5
- package/src/slider/index.ts +1 -0
- package/src/slider/slider.scss +130 -0
- package/src/slider/slider.ts +178 -0
- package/src/spinner/spinner.ts +2 -2
- package/src/switch/switch.ts +4 -4
- package/src/tabs/index.ts +4 -0
- package/src/tabs/tab-group.scss +10 -0
- package/src/tabs/tab-group.ts +137 -0
- package/src/tabs/tab-panel.scss +12 -0
- package/src/tabs/tab-panel.ts +28 -0
- package/src/tabs/tab.scss +157 -0
- package/src/tabs/tab.ts +242 -0
- package/src/tabs/tabs.scss +18 -0
- package/src/tabs/tabs.ts +64 -0
- package/src/textarea/textarea.ts +5 -5
- package/src/time-picker/time-picker.ts +7 -7
- package/src/{popover/tooltip → tooltip}/tooltip.scss +1 -1
- package/src/{popover/tooltip → tooltip}/tooltip.ts +10 -6
- package/dist/PeacockComponent-CxJc63xj.js.map +0 -1
- package/dist/button-DaL4va7Q.js.map +0 -1
- package/dist/dispatch-event-utils-vbdiOSeC.js.map +0 -1
- package/dist/image-v3BujlY5.js.map +0 -1
- package/dist/src/PeacockComponent.d.ts +0 -1
- package/dist/src/accordion/accordion/index.d.ts +0 -1
- package/dist/src/avatar/p-avatar.d.ts +0 -3
- package/dist/src/badge/p-badge.d.ts +0 -3
- package/src/accordion/accordion/index.ts +0 -1
- package/src/avatar/p-avatar.ts +0 -5
- package/src/badge/p-badge.ts +0 -5
|
@@ -12,10 +12,25 @@ import * as prettierPluginEstree from 'prettier/plugins/estree';
|
|
|
12
12
|
|
|
13
13
|
import { BundledLanguage, codeToHtml, ShikiTransformer } from 'shiki';
|
|
14
14
|
|
|
15
|
-
import
|
|
15
|
+
import IndividualComponent from 'src/IndividualComponent.js';
|
|
16
16
|
import { copyToClipboard } from '../utils/copy-to-clipboard.js';
|
|
17
17
|
import styles from './code-highlighter.scss';
|
|
18
18
|
|
|
19
|
+
/**
|
|
20
|
+
* @label Code Highlighter
|
|
21
|
+
* @tag wc-code-highlighter
|
|
22
|
+
* @rawTag code-highlighter
|
|
23
|
+
* @summary A component that provides syntax highlighting for code snippets.
|
|
24
|
+
* @tags display
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```html
|
|
28
|
+
* <wc-code-highlighter language="javascript">
|
|
29
|
+
* <pre><code>console.log('Hello');</code></pre>
|
|
30
|
+
* </wc-code-highlighter>
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
|
|
19
34
|
const locale = {
|
|
20
35
|
loading: 'Loading code...',
|
|
21
36
|
copyToClipboard: 'Copy to clipboard',
|
|
@@ -43,7 +58,7 @@ const locale = {
|
|
|
43
58
|
* ```
|
|
44
59
|
* @tags display
|
|
45
60
|
*/
|
|
46
|
-
@
|
|
61
|
+
@IndividualComponent
|
|
47
62
|
export class CodeHighlighter extends LitElement {
|
|
48
63
|
static styles = [styles];
|
|
49
64
|
|
|
@@ -173,7 +188,7 @@ export class CodeHighlighter extends LitElement {
|
|
|
173
188
|
<div class="header">
|
|
174
189
|
<div class="header-title">${this.language}</div>
|
|
175
190
|
<div class="header-actions">
|
|
176
|
-
<icon-button
|
|
191
|
+
<wc-icon-button
|
|
177
192
|
color="dark"
|
|
178
193
|
variant="text"
|
|
179
194
|
size="xs"
|
|
@@ -182,7 +197,7 @@ export class CodeHighlighter extends LitElement {
|
|
|
182
197
|
tooltip=${locale.copyToClipboard}
|
|
183
198
|
@click=${this.__handleCopyClick}
|
|
184
199
|
>
|
|
185
|
-
</icon-button>
|
|
200
|
+
</wc-icon-button>
|
|
186
201
|
</div>
|
|
187
202
|
</div>
|
|
188
203
|
|
|
@@ -7,22 +7,17 @@ type ContainerSize = 'max' | 'xl' | 'lg' | 'md' | 'sm' | 'full';
|
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* @label Container
|
|
10
|
-
* @tag
|
|
10
|
+
* @tag wc-container
|
|
11
11
|
* @rawTag container
|
|
12
|
-
* @summary
|
|
13
|
-
*
|
|
14
|
-
* @cssprop --
|
|
15
|
-
* @
|
|
16
|
-
* @cssprop --avatar-size - Controls the size of the avatar.
|
|
17
|
-
* @cssprop --avatar-text-color - Controls the color of the text inside the avatar.
|
|
18
|
-
*
|
|
12
|
+
* @summary A responsive container component for layout.
|
|
13
|
+
* @cssprop --container-max-width - Controls the maximum width of the container.
|
|
14
|
+
* @cssprop --container-padding - Controls the padding of the container.
|
|
15
|
+
* @tags layout
|
|
19
16
|
*
|
|
20
17
|
* @example
|
|
21
18
|
* ```html
|
|
22
|
-
* <
|
|
19
|
+
* <wc-container size="lg">Content</wc-container>
|
|
23
20
|
* ```
|
|
24
|
-
*
|
|
25
|
-
* @tags display
|
|
26
21
|
*/
|
|
27
22
|
export class Container extends LitElement {
|
|
28
23
|
@property({ type: String, reflect: true })
|
|
@@ -7,14 +7,14 @@ import { spread } from '../spread.js';
|
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* @label Date Picker
|
|
10
|
-
* @tag date-picker
|
|
10
|
+
* @tag wc-date-picker
|
|
11
11
|
* @rawTag date-picker
|
|
12
|
-
*
|
|
13
12
|
* @summary The Date Picker component is used to capture date user input.
|
|
13
|
+
* @tags input
|
|
14
14
|
*
|
|
15
15
|
* @example
|
|
16
16
|
* ```html
|
|
17
|
-
* <date-picker label="
|
|
17
|
+
* <wc-date-picker label="Date" placeholder="Select a date"></wc-date-picker>
|
|
18
18
|
* ```
|
|
19
19
|
*/
|
|
20
20
|
export class DatePicker extends BaseInput {
|
|
@@ -122,7 +122,7 @@ export class DatePicker extends BaseInput {
|
|
|
122
122
|
|
|
123
123
|
render() {
|
|
124
124
|
return html`
|
|
125
|
-
<
|
|
125
|
+
<wc-field
|
|
126
126
|
?required=${this.required}
|
|
127
127
|
?disabled=${this.disabled}
|
|
128
128
|
?readonly=${this.readonly}
|
|
@@ -161,7 +161,7 @@ export class DatePicker extends BaseInput {
|
|
|
161
161
|
|
|
162
162
|
<slot name="end" slot="field-end"></slot>
|
|
163
163
|
|
|
164
|
-
<icon-button
|
|
164
|
+
<wc-icon-button
|
|
165
165
|
slot="field-end"
|
|
166
166
|
color="secondary"
|
|
167
167
|
variant="text"
|
|
@@ -174,8 +174,8 @@ export class DatePicker extends BaseInput {
|
|
|
174
174
|
});
|
|
175
175
|
}}
|
|
176
176
|
>
|
|
177
|
-
</icon-button>
|
|
178
|
-
</
|
|
177
|
+
</wc-icon-button>
|
|
178
|
+
</wc-field>
|
|
179
179
|
`;
|
|
180
180
|
}
|
|
181
181
|
}
|
package/src/divider/divider.ts
CHANGED
|
@@ -6,7 +6,7 @@ import { observerSlotChangesWithCallback } from '../utils.js';
|
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* @label Divider
|
|
9
|
-
* @tag
|
|
9
|
+
* @tag wc-divider
|
|
10
10
|
* @rawTag divider
|
|
11
11
|
*
|
|
12
12
|
* @summary The divider component is used to visually separate content.
|
|
@@ -19,7 +19,7 @@ import { observerSlotChangesWithCallback } from '../utils.js';
|
|
|
19
19
|
*
|
|
20
20
|
* @example
|
|
21
21
|
* ```html
|
|
22
|
-
* <
|
|
22
|
+
* <wc-divider style="width: 12rem;">or</wc-divider>
|
|
23
23
|
* ```
|
|
24
24
|
* @tags display
|
|
25
25
|
*/
|
|
@@ -3,7 +3,7 @@ import styles from './elevation.scss';
|
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* @label Elevation
|
|
6
|
-
* @tag
|
|
6
|
+
* @tag wc-elevation
|
|
7
7
|
* @rawTag elevation
|
|
8
8
|
*
|
|
9
9
|
* @summary Adds elevation to an element.
|
|
@@ -17,7 +17,7 @@ import styles from './elevation.scss';
|
|
|
17
17
|
* @example
|
|
18
18
|
* ```html
|
|
19
19
|
* <div style="position: relative; padding: var(--spacing-200);">
|
|
20
|
-
* <
|
|
20
|
+
* <wc-elevation style='--elevation-level: 2; --elevation-container-shape: var(--shape-corner-extra-small);'></wc-elevation>
|
|
21
21
|
* Level 2
|
|
22
22
|
* </div>
|
|
23
23
|
* ```
|
|
@@ -5,8 +5,15 @@ import styles from './empty-state.scss';
|
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* @label Empty State
|
|
8
|
-
* @
|
|
9
|
-
* @
|
|
8
|
+
* @tag wc-empty-state
|
|
9
|
+
* @rawTag empty-state
|
|
10
|
+
* @summary A message that displays when there is no information to display.
|
|
11
|
+
* @tags display
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```html
|
|
15
|
+
* <wc-empty-state headline="No items found"></wc-empty-state>
|
|
16
|
+
* ```
|
|
10
17
|
*/
|
|
11
18
|
export class EmptyState extends LitElement {
|
|
12
19
|
// Lit handles styles in a static property for better performance
|
|
@@ -69,7 +76,7 @@ export class EmptyState extends LitElement {
|
|
|
69
76
|
<div class="${classMap(classes)}">
|
|
70
77
|
<div class="empty-state-container">
|
|
71
78
|
<div class="illustration">
|
|
72
|
-
<
|
|
79
|
+
<wc-icon src="${illustrationPath}"></wc-icon>
|
|
73
80
|
</div>
|
|
74
81
|
|
|
75
82
|
<div class="content">
|
package/src/field/field.scss
CHANGED
|
@@ -225,8 +225,8 @@
|
|
|
225
225
|
position: absolute;
|
|
226
226
|
top: 0;
|
|
227
227
|
left: 0;
|
|
228
|
-
--skeleton-shape-start-start: var(--shape-
|
|
229
|
-
--skeleton-shape-start-end: var(--shape-
|
|
230
|
-
--skeleton-shape-end-start: var(--shape-
|
|
231
|
-
--skeleton-shape-end-end: var(--shape-
|
|
228
|
+
--skeleton-container-shape-start-start: var(--_container-shape-start-start);
|
|
229
|
+
--skeleton-container-shape-start-end: var(--_container-shape-start-end);
|
|
230
|
+
--skeleton-container-shape-end-start: var(--_container-shape-end-start);
|
|
231
|
+
--skeleton-container-shape-end-end: var(--_container-shape-end-end);
|
|
232
232
|
}
|
package/src/field/field.ts
CHANGED
|
@@ -4,6 +4,23 @@ import { classMap } from 'lit/directives/class-map.js';
|
|
|
4
4
|
import styles from './field.scss';
|
|
5
5
|
import { observerSlotChangesWithCallback } from '../utils.js';
|
|
6
6
|
|
|
7
|
+
/**
|
|
8
|
+
* @label Field
|
|
9
|
+
* @tag wc-field
|
|
10
|
+
* @rawTag field
|
|
11
|
+
*
|
|
12
|
+
* @summary Wrapper for form fields with label and help text.
|
|
13
|
+
* @overview
|
|
14
|
+
* <p>Field provides consistent styling and behavior for form inputs.</p>
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```html
|
|
18
|
+
* <wc-field label="Name" required>
|
|
19
|
+
* some text
|
|
20
|
+
* </wc-field>
|
|
21
|
+
* ```
|
|
22
|
+
* @tags form
|
|
23
|
+
*/
|
|
7
24
|
export class Field extends LitElement {
|
|
8
25
|
static styles = [styles];
|
|
9
26
|
|
|
@@ -106,7 +123,7 @@ export class Field extends LitElement {
|
|
|
106
123
|
${this.label}${this.required
|
|
107
124
|
? html`<span class="required">*</span>`
|
|
108
125
|
: nothing}
|
|
109
|
-
<
|
|
126
|
+
<wc-skeleton class="skeleton"></wc-skeleton>
|
|
110
127
|
</label>
|
|
111
128
|
</div>`;
|
|
112
129
|
}
|
|
@@ -132,7 +149,7 @@ export class Field extends LitElement {
|
|
|
132
149
|
<div class="field-body" @click=${this.__handleClick}>
|
|
133
150
|
<div class="outline"></div>
|
|
134
151
|
<div class="background"></div>
|
|
135
|
-
<
|
|
152
|
+
<wc-skeleton class="skeleton"></wc-skeleton>
|
|
136
153
|
|
|
137
154
|
<div class="field-content">
|
|
138
155
|
<div
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
border-end-start-radius: var(--focus-ring-container-shape-end-start);
|
|
8
8
|
border-end-end-radius: var(--focus-ring-container-shape-end-end);
|
|
9
9
|
corner-shape: var(--focus-ring-container-shape-variant);
|
|
10
|
+
--focus-ring-color: var(--color-primary);
|
|
10
11
|
|
|
11
12
|
inset: calc(-1 * var(--focus-ring-inset, 2px));
|
|
12
13
|
|
|
@@ -19,5 +20,5 @@
|
|
|
19
20
|
|
|
20
21
|
:host([visible]) {
|
|
21
22
|
display: flex;
|
|
22
|
-
outline: 3px solid var(--color
|
|
23
|
+
outline: 3px solid var(--focus-ring-color);
|
|
23
24
|
}
|
package/src/icon/icon.ts
CHANGED
|
@@ -8,7 +8,7 @@ import styles from './icon.scss';
|
|
|
8
8
|
export type IconProvider = 'material-symbols' | 'material-icons';
|
|
9
9
|
/**
|
|
10
10
|
* @label Icon
|
|
11
|
-
* @tag
|
|
11
|
+
* @tag wc-icon
|
|
12
12
|
* @rawTag icon
|
|
13
13
|
* @summary Icons are visual symbols used to represent ideas, objects, or actions.
|
|
14
14
|
* @overview Icons are visual symbols used to represent ideas, objects, or actions. They communicate messages at a glance, afford interactivity, and draw attention to important information.
|
|
@@ -18,7 +18,7 @@ export type IconProvider = 'material-symbols' | 'material-icons';
|
|
|
18
18
|
*
|
|
19
19
|
* @example
|
|
20
20
|
* ```html
|
|
21
|
-
* <
|
|
21
|
+
* <wc-icon name="home" style="--icon-size: 2rem;"></wc-icon>
|
|
22
22
|
* ```
|
|
23
23
|
*
|
|
24
24
|
*/
|
package/src/icon/p-icon.ts
CHANGED
package/src/image/image.ts
CHANGED
|
@@ -7,23 +7,15 @@ import styles from './image.scss';
|
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* @label Image
|
|
10
|
-
* @tag
|
|
10
|
+
* @tag wc-image
|
|
11
11
|
* @rawTag image
|
|
12
|
-
*
|
|
13
|
-
* @
|
|
14
|
-
* @overview
|
|
15
|
-
* - CodeHighlighter is a component that provides syntax highlighting for code snippets.
|
|
16
|
-
* - It supports various programming languages and can display line numbers for better readability.
|
|
12
|
+
* @summary An image component with lazy loading and theme support.
|
|
13
|
+
* @tags media
|
|
17
14
|
*
|
|
18
15
|
* @example
|
|
19
16
|
* ```html
|
|
20
|
-
* <
|
|
21
|
-
* function helloWorld() {
|
|
22
|
-
* console.log('Hello, world!');
|
|
23
|
-
* }</code></pre>
|
|
24
|
-
* </code-highlighter>
|
|
17
|
+
* <wc-image src="image.jpg" alt="Description"></wc-image>
|
|
25
18
|
* ```
|
|
26
|
-
* @tags display
|
|
27
19
|
*/
|
|
28
20
|
export class Image extends LitElement {
|
|
29
21
|
static styles = [styles];
|
package/src/index.ts
CHANGED
|
@@ -8,7 +8,7 @@ export { Button, ButtonGroup, IconButton } from './button/index.js';
|
|
|
8
8
|
|
|
9
9
|
export { FocusRing } from './focus-ring/index.js';
|
|
10
10
|
export { Ripple } from './ripple/index.js';
|
|
11
|
-
export { Accordion } from './accordion/
|
|
11
|
+
export { Accordion } from './accordion/index.js';
|
|
12
12
|
export { Link } from './link/index.js';
|
|
13
13
|
export { Tag } from './chip/tag/index.js';
|
|
14
14
|
export { Chip } from './chip/chip/index.js';
|
|
@@ -32,4 +32,8 @@ export { Breadcrumb, BreadcrumbItem } from './breadcrumb/index.js';
|
|
|
32
32
|
|
|
33
33
|
export { CodeHighlighter } from './code-highlighter/index.js';
|
|
34
34
|
export { CodeEditor } from './code-editor/index.js';
|
|
35
|
-
export { Image } from './image/index.js';
|
|
35
|
+
export { Image } from './image/index.js';
|
|
36
|
+
export { Tab, TabGroup, TabPanel, Tabs } from './tabs/index.js';
|
|
37
|
+
export { Slider } from './slider/index.js';
|
|
38
|
+
export { ChartDoughnut } from './chart-doughnut/index.js';
|
|
39
|
+
export { ChartPie } from './chart-pie/index.js';
|
package/src/input/input.ts
CHANGED
|
@@ -6,14 +6,14 @@ import styles from './input.scss';
|
|
|
6
6
|
import { spread } from '../spread.js';
|
|
7
7
|
/**
|
|
8
8
|
* @label Input
|
|
9
|
-
* @tag input
|
|
9
|
+
* @tag wc-input
|
|
10
10
|
* @rawTag input
|
|
11
11
|
*
|
|
12
12
|
* @summary The Input component is used to capture user input.
|
|
13
13
|
*
|
|
14
14
|
* @example
|
|
15
15
|
* ```html
|
|
16
|
-
* <input
|
|
16
|
+
* <wc-input label="Name" required placeholder="Enter your name"></wc-input>
|
|
17
17
|
* ```
|
|
18
18
|
*/
|
|
19
19
|
export class Input extends BaseInput {
|
|
@@ -127,7 +127,7 @@ export class Input extends BaseInput {
|
|
|
127
127
|
this.type === 'password' && this.passwordVisible ? 'text' : this.type;
|
|
128
128
|
|
|
129
129
|
return html`
|
|
130
|
-
<
|
|
130
|
+
<wc-field
|
|
131
131
|
?required=${this.required}
|
|
132
132
|
?disabled=${this.disabled}
|
|
133
133
|
?readonly=${this.readonly}
|
|
@@ -172,7 +172,7 @@ export class Input extends BaseInput {
|
|
|
172
172
|
? 'Hide password'
|
|
173
173
|
: 'Show password'}
|
|
174
174
|
>
|
|
175
|
-
<icon-button
|
|
175
|
+
<wc-icon-button
|
|
176
176
|
class="password-toggle"
|
|
177
177
|
variant="text"
|
|
178
178
|
name=${this.passwordVisible ? 'visibility_off' : 'visibility'}
|
|
@@ -180,13 +180,13 @@ export class Input extends BaseInput {
|
|
|
180
180
|
this.passwordVisible = !this.passwordVisible;
|
|
181
181
|
}}
|
|
182
182
|
>
|
|
183
|
-
</icon-button>
|
|
183
|
+
</wc-icon-button>
|
|
184
184
|
</pc-tooltip>
|
|
185
185
|
`
|
|
186
186
|
: nothing}
|
|
187
187
|
|
|
188
188
|
<slot name="end" slot="field-end"></slot>
|
|
189
|
-
</
|
|
189
|
+
</wc-field>
|
|
190
190
|
`;
|
|
191
191
|
}
|
|
192
192
|
}
|
package/src/link/link.ts
CHANGED
|
@@ -5,17 +5,16 @@ import styles from './link.scss';
|
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* @label Link
|
|
8
|
-
* @tag
|
|
8
|
+
* @tag wc-link
|
|
9
9
|
* @rawTag link
|
|
10
10
|
* @summary The link component is used to navigate to a new page or section within the current page.
|
|
11
|
-
*
|
|
12
|
-
* @
|
|
11
|
+
* @cssprop --link-color - Controls the color of the link.
|
|
12
|
+
* @tags navigation
|
|
13
13
|
*
|
|
14
14
|
* @example
|
|
15
15
|
* ```html
|
|
16
|
-
* <
|
|
16
|
+
* <wc-link href="#">Link</wc-link>
|
|
17
17
|
* ```
|
|
18
|
-
* @tags display
|
|
19
18
|
*/
|
|
20
19
|
export class Link extends LitElement {
|
|
21
20
|
static styles = [styles];
|
package/src/menu/menu/menu.ts
CHANGED
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
import { LitElement, html, css } from 'lit';
|
|
2
2
|
import { customElement, property, query, state } from 'lit/decorators.js';
|
|
3
3
|
|
|
4
|
+
/**
|
|
5
|
+
* @label Menu
|
|
6
|
+
* @tag wc-menu
|
|
7
|
+
* @rawTag menu
|
|
8
|
+
* @summary A dropdown menu component.
|
|
9
|
+
* @tags navigation
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```html
|
|
13
|
+
* <wc-menu>
|
|
14
|
+
* <wc-menu-list>
|
|
15
|
+
* <wc-menu-item>Item 1</wc-menu-item>
|
|
16
|
+
* </wc-menu-list>
|
|
17
|
+
* </wc-menu>
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
4
20
|
export class Menu extends LitElement {
|
|
5
21
|
@property({ type: Boolean, reflect: true }) open = false;
|
|
6
22
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
@use "../../../scss/mixin";
|
|
2
2
|
|
|
3
|
-
:host-context(
|
|
3
|
+
:host-context([variant=standard]) {
|
|
4
4
|
--menu-item-label-color: var(--color-on-surface-variant);
|
|
5
5
|
--menu-item-label-selected-color: var(--color-on-tertiary-container);
|
|
6
6
|
--menu-item-container-selected-color: var(--color-tertiary-container);
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
-
:host-context(
|
|
9
|
+
:host-context([variant=vibrant]) {
|
|
10
10
|
--menu-item-label-color: var(--color-on-tertiary-container);
|
|
11
11
|
--menu-item-label-selected-color: var(--color-on-tertiary);
|
|
12
12
|
--menu-item-container-selected-color: var(--color-tertiary);
|
|
@@ -4,6 +4,18 @@ import { classMap } from 'lit/directives/class-map.js';
|
|
|
4
4
|
import styles from './menu-item.scss';
|
|
5
5
|
import colorStyles from './menu-item-colors.scss';
|
|
6
6
|
|
|
7
|
+
/**
|
|
8
|
+
* @label Menu Item
|
|
9
|
+
* @tag wc-menu-item
|
|
10
|
+
* @rawTag menu-item
|
|
11
|
+
* @summary An item in a menu list.
|
|
12
|
+
* @tags navigation
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```html
|
|
16
|
+
* <wc-menu-item>Menu Item</wc-menu-item>
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
7
19
|
export class MenuItem extends LitElement {
|
|
8
20
|
@property({ type: Boolean, reflect: true }) disabled = false;
|
|
9
21
|
|
|
@@ -91,9 +103,9 @@ export class MenuItem extends LitElement {
|
|
|
91
103
|
|
|
92
104
|
renderContent() {
|
|
93
105
|
return html`
|
|
94
|
-
<focus-ring class="focus-ring" .control=${this} element="menuItemElement"></focus-ring>
|
|
106
|
+
<wc-focus-ring class="focus-ring" .control=${this} element="menuItemElement"></wc-focus-ring>
|
|
95
107
|
<div class="background"></div>
|
|
96
|
-
<
|
|
108
|
+
<wc-ripple class="ripple"></wc-ripple>
|
|
97
109
|
|
|
98
110
|
<div class="menu-item-content">
|
|
99
111
|
<slot name="leading-icon"></slot>
|
|
@@ -3,6 +3,21 @@ import { property } from 'lit/decorators.js';
|
|
|
3
3
|
import { classMap } from 'lit/directives/class-map.js';
|
|
4
4
|
import styles from './menu-list.scss';
|
|
5
5
|
|
|
6
|
+
/**
|
|
7
|
+
* @label Menu List
|
|
8
|
+
* @tag wc-menu-list
|
|
9
|
+
* @rawTag menu-list
|
|
10
|
+
* @summary A list of menu items.
|
|
11
|
+
* @tags navigation
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```html
|
|
15
|
+
* <wc-menu-list>
|
|
16
|
+
* <wc-menu-item>Item 1</wc-menu-item>
|
|
17
|
+
* <wc-menu-item>Item 2</wc-menu-item>
|
|
18
|
+
* </wc-menu-list>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
6
21
|
export class MenuList extends LitElement {
|
|
7
22
|
static styles = [styles];
|
|
8
23
|
|
|
@@ -23,7 +38,7 @@ export class MenuList extends LitElement {
|
|
|
23
38
|
})}
|
|
24
39
|
>
|
|
25
40
|
<div class="background"></div>
|
|
26
|
-
<
|
|
41
|
+
<wc-elevation class="elevation"></wc-elevation>
|
|
27
42
|
|
|
28
43
|
<div class="menu-list-content">
|
|
29
44
|
<slot></slot>
|
|
@@ -1,29 +1,31 @@
|
|
|
1
1
|
import { html, LitElement, nothing } from 'lit';
|
|
2
2
|
import { property } from 'lit/decorators.js';
|
|
3
3
|
import { styleMap } from 'lit/directives/style-map.js';
|
|
4
|
-
import
|
|
4
|
+
import IndividualComponent from 'src/IndividualComponent.js';
|
|
5
5
|
import styles from './number-counter.scss';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* @label Number Counter
|
|
9
|
-
* @tag number-counter
|
|
9
|
+
* @tag wc-number-counter
|
|
10
10
|
* @rawTag number-counter
|
|
11
11
|
* @summary Displays a number with commas for thousands.
|
|
12
12
|
*
|
|
13
13
|
* @example
|
|
14
14
|
* ```html
|
|
15
|
-
* <number-counter value="123456789"></number-counter>
|
|
15
|
+
* <wc-number-counter id="number-counter" value="123456789"></wc-number-counter>
|
|
16
16
|
* <script>
|
|
17
|
-
*
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
*
|
|
17
|
+
* customElements.whenDefined('wc-number-counter').then(() => {
|
|
18
|
+
const $counter = document.querySelector('#number-counter');
|
|
19
|
+
|
|
20
|
+
setInterval(() => {
|
|
21
|
+
$counter.value = $counter.value + Math.floor(Math.random() * 1000);
|
|
22
|
+
}, 1000);
|
|
23
|
+
});
|
|
22
24
|
* </script>
|
|
23
25
|
* ```
|
|
24
26
|
* @tags display
|
|
25
27
|
*/
|
|
26
|
-
@
|
|
28
|
+
@IndividualComponent
|
|
27
29
|
export class NumberCounter extends LitElement {
|
|
28
30
|
static styles = [styles];
|
|
29
31
|
|
|
@@ -15,7 +15,7 @@ import { spread } from '../spread.js';
|
|
|
15
15
|
*
|
|
16
16
|
* @example
|
|
17
17
|
* ```html
|
|
18
|
-
* <number-field label="Age" placeholder="Enter your age"></number-field>
|
|
18
|
+
* <wc-number-field label="Age" placeholder="Enter your age"></wc-number-field>
|
|
19
19
|
* ```
|
|
20
20
|
*/
|
|
21
21
|
export class NumberField extends BaseInput {
|
|
@@ -150,7 +150,7 @@ export class NumberField extends BaseInput {
|
|
|
150
150
|
};
|
|
151
151
|
|
|
152
152
|
return html`
|
|
153
|
-
<
|
|
153
|
+
<wc-field
|
|
154
154
|
?required=${this.required}
|
|
155
155
|
?disabled=${this.disabled}
|
|
156
156
|
?readonly=${this.readonly}
|
|
@@ -166,13 +166,13 @@ export class NumberField extends BaseInput {
|
|
|
166
166
|
class=${classMap(classes)}
|
|
167
167
|
>
|
|
168
168
|
${this.stepper && !this.disabled
|
|
169
|
-
? html`<icon-button
|
|
169
|
+
? html`<wc-icon-button
|
|
170
170
|
class="stepper"
|
|
171
171
|
name="remove"
|
|
172
172
|
variant="text"
|
|
173
173
|
slot="field-start"
|
|
174
174
|
@click=${this.stepDown}
|
|
175
|
-
></icon-button>`
|
|
175
|
+
></wc-icon-button>`
|
|
176
176
|
: nothing}
|
|
177
177
|
|
|
178
178
|
<slot name="start" slot="field-start"></slot>
|
|
@@ -201,15 +201,15 @@ export class NumberField extends BaseInput {
|
|
|
201
201
|
<slot name="end" slot="field-end"></slot>
|
|
202
202
|
|
|
203
203
|
${this.stepper && !this.disabled
|
|
204
|
-
? html`<icon-button
|
|
204
|
+
? html`<wc-icon-button
|
|
205
205
|
class="stepper"
|
|
206
206
|
variant="text"
|
|
207
207
|
name="add"
|
|
208
208
|
slot="field-end"
|
|
209
209
|
@click=${this.stepUp}
|
|
210
|
-
></icon-button>`
|
|
210
|
+
></wc-icon-button>`
|
|
211
211
|
: nothing}
|
|
212
|
-
</
|
|
212
|
+
</wc-field>
|
|
213
213
|
`;
|
|
214
214
|
}
|
|
215
215
|
}
|