@moni-labs/moni-ui 0.2.0 → 0.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/README.md +52 -194
- package/custom-elements.json +1636 -350
- package/dist/actions/index.d.ts +6 -0
- package/dist/actions/index.d.ts.map +1 -1
- package/dist/actions/index.js +6 -0
- package/dist/components/_base/field-styles.d.ts +51 -16
- package/dist/components/_base/field-styles.d.ts.map +1 -1
- package/dist/components/_base/field-styles.js +164 -36
- package/dist/components/_base/index.d.ts +25 -0
- package/dist/components/_base/index.d.ts.map +1 -1
- package/dist/components/_base/index.js +25 -0
- package/dist/components/_base/interaction-styles.d.ts +39 -12
- package/dist/components/_base/interaction-styles.d.ts.map +1 -1
- package/dist/components/_base/interaction-styles.js +85 -33
- package/dist/components/_base/moni-element.d.ts +43 -8
- package/dist/components/_base/moni-element.d.ts.map +1 -1
- package/dist/components/_base/moni-element.js +43 -8
- package/dist/components/_base/shared-styles.d.ts +41 -17
- package/dist/components/_base/shared-styles.d.ts.map +1 -1
- package/dist/components/_base/shared-styles.js +113 -21
- package/dist/components/index.d.ts +6 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +6 -0
- package/dist/components/loading-shapes.d.ts +6 -0
- package/dist/components/loading-shapes.d.ts.map +1 -1
- package/dist/components/loading-shapes.js +6 -0
- package/dist/components/moni-app-bar.d.ts +128 -33
- package/dist/components/moni-app-bar.d.ts.map +1 -1
- package/dist/components/moni-app-bar.js +121 -26
- package/dist/components/moni-badge.d.ts +122 -14
- package/dist/components/moni-badge.d.ts.map +1 -1
- package/dist/components/moni-badge.js +122 -14
- package/dist/components/moni-bottom-sheet.d.ts +120 -15
- package/dist/components/moni-bottom-sheet.d.ts.map +1 -1
- package/dist/components/moni-bottom-sheet.js +116 -12
- package/dist/components/moni-button-group.d.ts +53 -27
- package/dist/components/moni-button-group.d.ts.map +1 -1
- package/dist/components/moni-button-group.js +49 -23
- package/dist/components/moni-button-segment.d.ts +28 -8
- package/dist/components/moni-button-segment.d.ts.map +1 -1
- package/dist/components/moni-button-segment.js +27 -7
- package/dist/components/moni-button.d.ts +51 -32
- package/dist/components/moni-button.d.ts.map +1 -1
- package/dist/components/moni-button.js +50 -31
- package/dist/components/moni-card.d.ts +91 -31
- package/dist/components/moni-card.d.ts.map +1 -1
- package/dist/components/moni-card.js +86 -26
- package/dist/components/moni-carousel.d.ts +67 -17
- package/dist/components/moni-carousel.d.ts.map +1 -1
- package/dist/components/moni-carousel.js +59 -16
- package/dist/components/moni-checkbox.d.ts +122 -17
- package/dist/components/moni-checkbox.d.ts.map +1 -1
- package/dist/components/moni-checkbox.js +118 -14
- package/dist/components/moni-chip.d.ts +56 -30
- package/dist/components/moni-chip.d.ts.map +1 -1
- package/dist/components/moni-chip.js +51 -25
- package/dist/components/moni-color-field.d.ts +44 -6
- package/dist/components/moni-color-field.d.ts.map +1 -1
- package/dist/components/moni-color-field.js +43 -5
- package/dist/components/moni-context-menu.d.ts +44 -22
- package/dist/components/moni-context-menu.d.ts.map +1 -1
- package/dist/components/moni-context-menu.js +43 -21
- package/dist/components/moni-dialog.d.ts +107 -15
- package/dist/components/moni-dialog.d.ts.map +1 -1
- package/dist/components/moni-dialog.js +105 -14
- package/dist/components/moni-divider.d.ts +50 -15
- package/dist/components/moni-divider.d.ts.map +1 -1
- package/dist/components/moni-divider.js +49 -14
- package/dist/components/moni-expansion.d.ts +44 -8
- package/dist/components/moni-expansion.d.ts.map +1 -1
- package/dist/components/moni-expansion.js +43 -7
- package/dist/components/moni-fab-menu.d.ts +39 -20
- package/dist/components/moni-fab-menu.d.ts.map +1 -1
- package/dist/components/moni-fab-menu.js +38 -19
- package/dist/components/moni-fab.d.ts +49 -23
- package/dist/components/moni-fab.d.ts.map +1 -1
- package/dist/components/moni-fab.js +46 -20
- package/dist/components/moni-file-field.d.ts +54 -14
- package/dist/components/moni-file-field.d.ts.map +1 -1
- package/dist/components/moni-file-field.js +53 -13
- package/dist/components/moni-icon.d.ts +78 -11
- package/dist/components/moni-icon.d.ts.map +1 -1
- package/dist/components/moni-icon.js +77 -10
- package/dist/components/moni-list-item.d.ts +61 -30
- package/dist/components/moni-list-item.d.ts.map +1 -1
- package/dist/components/moni-list-item.js +55 -24
- package/dist/components/moni-list.d.ts +37 -13
- package/dist/components/moni-list.d.ts.map +1 -1
- package/dist/components/moni-list.js +36 -12
- package/dist/components/moni-loading-indicator.d.ts +38 -11
- package/dist/components/moni-loading-indicator.d.ts.map +1 -1
- package/dist/components/moni-loading-indicator.js +37 -10
- package/dist/components/moni-menu-item.d.ts +31 -8
- package/dist/components/moni-menu-item.d.ts.map +1 -1
- package/dist/components/moni-menu-item.js +30 -7
- package/dist/components/moni-menu.d.ts +58 -33
- package/dist/components/moni-menu.d.ts.map +1 -1
- package/dist/components/moni-menu.js +51 -26
- package/dist/components/moni-morph-modal.d.ts +7 -1
- package/dist/components/moni-morph-modal.d.ts.map +1 -1
- package/dist/components/moni-morph-modal.js +46 -24
- package/dist/components/moni-nav-item.d.ts +50 -10
- package/dist/components/moni-nav-item.d.ts.map +1 -1
- package/dist/components/moni-nav-item.js +48 -8
- package/dist/components/moni-nav.d.ts +57 -22
- package/dist/components/moni-nav.d.ts.map +1 -1
- package/dist/components/moni-nav.js +53 -18
- package/dist/components/moni-progress.d.ts +108 -20
- package/dist/components/moni-progress.d.ts.map +1 -1
- package/dist/components/moni-progress.js +104 -16
- package/dist/components/moni-radio.d.ts +106 -14
- package/dist/components/moni-radio.d.ts.map +1 -1
- package/dist/components/moni-radio.js +104 -13
- package/dist/components/moni-ripple.d.ts +121 -10
- package/dist/components/moni-ripple.d.ts.map +1 -1
- package/dist/components/moni-ripple.js +120 -9
- package/dist/components/moni-segmented-button.d.ts +31 -11
- package/dist/components/moni-segmented-button.d.ts.map +1 -1
- package/dist/components/moni-segmented-button.js +30 -10
- package/dist/components/moni-select-option.d.ts +43 -9
- package/dist/components/moni-select-option.d.ts.map +1 -1
- package/dist/components/moni-select-option.js +41 -7
- package/dist/components/moni-select.d.ts +59 -2
- package/dist/components/moni-select.d.ts.map +1 -1
- package/dist/components/moni-select.js +58 -1
- package/dist/components/moni-shape.d.ts +1 -1
- package/dist/components/moni-side-sheet.d.ts +56 -19
- package/dist/components/moni-side-sheet.d.ts.map +1 -1
- package/dist/components/moni-side-sheet.js +53 -16
- package/dist/components/moni-slider.d.ts +56 -25
- package/dist/components/moni-slider.d.ts.map +1 -1
- package/dist/components/moni-slider.js +55 -24
- package/dist/components/moni-snackbar.d.ts +86 -17
- package/dist/components/moni-snackbar.d.ts.map +1 -1
- package/dist/components/moni-snackbar.js +85 -16
- package/dist/components/moni-split-button.d.ts +38 -9
- package/dist/components/moni-split-button.d.ts.map +1 -1
- package/dist/components/moni-split-button.js +37 -8
- package/dist/components/moni-step.d.ts +42 -9
- package/dist/components/moni-step.d.ts.map +1 -1
- package/dist/components/moni-step.js +41 -8
- package/dist/components/moni-stepper.d.ts +43 -6
- package/dist/components/moni-stepper.d.ts.map +1 -1
- package/dist/components/moni-stepper.js +42 -5
- package/dist/components/moni-switch.d.ts +103 -16
- package/dist/components/moni-switch.d.ts.map +1 -1
- package/dist/components/moni-switch.js +99 -13
- package/dist/components/moni-tab.d.ts +35 -8
- package/dist/components/moni-tab.d.ts.map +1 -1
- package/dist/components/moni-tab.js +34 -7
- package/dist/components/moni-tabs.d.ts +51 -13
- package/dist/components/moni-tabs.d.ts.map +1 -1
- package/dist/components/moni-tabs.js +48 -10
- package/dist/components/moni-text-field.d.ts +55 -10
- package/dist/components/moni-text-field.d.ts.map +1 -1
- package/dist/components/moni-text-field.js +54 -9
- package/dist/components/moni-textarea.d.ts +51 -21
- package/dist/components/moni-textarea.d.ts.map +1 -1
- package/dist/components/moni-textarea.js +48 -18
- package/dist/components/moni-time-picker.d.ts +41 -11
- package/dist/components/moni-time-picker.d.ts.map +1 -1
- package/dist/components/moni-time-picker.js +40 -10
- package/dist/components/moni-toolbar.d.ts +43 -15
- package/dist/components/moni-toolbar.d.ts.map +1 -1
- package/dist/components/moni-toolbar.js +42 -14
- package/dist/components/moni-tooltip.d.ts +55 -25
- package/dist/components/moni-tooltip.d.ts.map +1 -1
- package/dist/components/moni-tooltip.js +54 -24
- package/dist/components/moni-typography.d.ts +43 -18
- package/dist/components/moni-typography.d.ts.map +1 -1
- package/dist/components/moni-typography.js +42 -17
- package/dist/index.d.ts +47 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +59 -2
- package/dist/styles/tailwind.css +67 -0
- package/dist/styles/tokens.css +111 -99
- package/dist/utils/color.d.ts +181 -2
- package/dist/utils/color.d.ts.map +1 -1
- package/dist/utils/color.js +182 -4
- package/dist/utils/theme.svelte.d.ts +305 -2
- package/dist/utils/theme.svelte.d.ts.map +1 -1
- package/dist/utils/theme.svelte.js +331 -2
- package/dist/web-components.d.ts +28 -0
- package/dist/web-components.d.ts.map +1 -1
- package/dist/web-components.js +29 -2
- package/package.json +1 -1
- package/src/actions/index.ts +7 -0
- package/src/components/_base/field-styles.ts +165 -37
- package/src/components/_base/index.ts +27 -0
- package/src/components/_base/interaction-styles.ts +86 -33
- package/src/components/_base/moni-element.ts +44 -8
- package/src/components/_base/shared-styles.ts +114 -21
- package/src/components/index.ts +7 -0
- package/src/components/loading-shapes.ts +7 -0
- package/src/components/moni-app-bar.ts +127 -26
- package/src/components/moni-badge.ts +128 -14
- package/src/components/moni-bottom-sheet.ts +125 -13
- package/src/components/moni-button-group.ts +50 -23
- package/src/components/moni-button-segment.ts +28 -7
- package/src/components/moni-button.ts +51 -31
- package/src/components/moni-card.ts +90 -26
- package/src/components/moni-carousel.ts +67 -16
- package/src/components/moni-checkbox.ts +125 -14
- package/src/components/moni-chip.ts +52 -25
- package/src/components/moni-color-field.ts +44 -5
- package/src/components/moni-context-menu.ts +44 -21
- package/src/components/moni-dialog.ts +111 -14
- package/src/components/moni-divider.ts +50 -14
- package/src/components/moni-expansion.ts +44 -7
- package/src/components/moni-fab-menu.ts +39 -19
- package/src/components/moni-fab.ts +47 -20
- package/src/components/moni-file-field.ts +54 -13
- package/src/components/moni-icon.ts +80 -10
- package/src/components/moni-list-item.ts +56 -24
- package/src/components/moni-list.ts +37 -12
- package/src/components/moni-loading-indicator.ts +38 -10
- package/src/components/moni-menu-item.ts +31 -7
- package/src/components/moni-menu.ts +52 -26
- package/src/components/moni-morph-modal.ts +58 -24
- package/src/components/moni-nav-item.ts +49 -8
- package/src/components/moni-nav.ts +54 -18
- package/src/components/moni-progress.ts +109 -16
- package/src/components/moni-radio.ts +111 -13
- package/src/components/moni-ripple.ts +126 -9
- package/src/components/moni-segmented-button.ts +31 -10
- package/src/components/moni-select-option.ts +42 -7
- package/src/components/moni-select.ts +79 -1
- package/src/components/moni-side-sheet.ts +54 -16
- package/src/components/moni-slider.ts +56 -24
- package/src/components/moni-snackbar.ts +90 -16
- package/src/components/moni-split-button.ts +38 -8
- package/src/components/moni-step.ts +42 -8
- package/src/components/moni-stepper.ts +43 -5
- package/src/components/moni-switch.ts +106 -13
- package/src/components/moni-tab.ts +35 -7
- package/src/components/moni-tabs.ts +49 -10
- package/src/components/moni-text-field.ts +55 -9
- package/src/components/moni-textarea.ts +49 -18
- package/src/components/moni-time-picker.ts +41 -10
- package/src/components/moni-toolbar.ts +43 -14
- package/src/components/moni-tooltip.ts +55 -24
- package/src/components/moni-typography.ts +43 -17
- package/src/index.ts +67 -3
- package/src/styles/tailwind.css +67 -0
- package/src/styles/tokens.css +111 -99
- package/src/types/svelte-runes.d.ts +64 -2
- package/src/utils/color.ts +286 -5
- package/src/utils/theme.svelte.ts +411 -2
- package/src/web-components.ts +31 -2
- package/dist/assets/shapes/arch.svg +0 -1
- package/dist/assets/shapes/arrow.svg +0 -1
- package/dist/assets/shapes/boom.svg +0 -1
- package/dist/assets/shapes/burst.svg +0 -1
- package/dist/assets/shapes/circle.svg +0 -1
- package/dist/assets/shapes/clamshell.svg +0 -1
- package/dist/assets/shapes/diamond.svg +0 -1
- package/dist/assets/shapes/fan.svg +0 -1
- package/dist/assets/shapes/flower.svg +0 -1
- package/dist/assets/shapes/gem.svg +0 -1
- package/dist/assets/shapes/ghost-ish.svg +0 -1
- package/dist/assets/shapes/heart.svg +0 -1
- package/dist/assets/shapes/leaf-clover4.svg +0 -1
- package/dist/assets/shapes/leaf-clover8.svg +0 -1
- package/dist/assets/shapes/loading-indicator.svg +0 -1
- package/dist/assets/shapes/oval.svg +0 -1
- package/dist/assets/shapes/pentagon.svg +0 -1
- package/dist/assets/shapes/pill.svg +0 -1
- package/dist/assets/shapes/pixel-circle.svg +0 -1
- package/dist/assets/shapes/pixel-triangle.svg +0 -1
- package/dist/assets/shapes/puffy-diamond.svg +0 -1
- package/dist/assets/shapes/puffy.svg +0 -1
- package/dist/assets/shapes/semicircle.svg +0 -1
- package/dist/assets/shapes/sided-cookie12.svg +0 -1
- package/dist/assets/shapes/sided-cookie4.svg +0 -1
- package/dist/assets/shapes/sided-cookie6.svg +0 -1
- package/dist/assets/shapes/sided-cookie7.svg +0 -1
- package/dist/assets/shapes/sided-cookie9.svg +0 -1
- package/dist/assets/shapes/slanted.svg +0 -1
- package/dist/assets/shapes/soft-boom.svg +0 -1
- package/dist/assets/shapes/soft-burst.svg +0 -1
- package/dist/assets/shapes/square.svg +0 -1
- package/dist/assets/shapes/sunny.svg +0 -1
- package/dist/assets/shapes/triangle.svg +0 -1
- package/dist/assets/shapes/very-sunny.svg +0 -1
- package/dist/assets/shapes/wavy-circle.svg +0 -1
- package/dist/assets/shapes/wavy.svg +0 -1
- package/src/assets/shapes/arch.svg +0 -1
- package/src/assets/shapes/arrow.svg +0 -1
- package/src/assets/shapes/boom.svg +0 -1
- package/src/assets/shapes/burst.svg +0 -1
- package/src/assets/shapes/circle.svg +0 -1
- package/src/assets/shapes/clamshell.svg +0 -1
- package/src/assets/shapes/diamond.svg +0 -1
- package/src/assets/shapes/fan.svg +0 -1
- package/src/assets/shapes/flower.svg +0 -1
- package/src/assets/shapes/gem.svg +0 -1
- package/src/assets/shapes/ghost-ish.svg +0 -1
- package/src/assets/shapes/heart.svg +0 -1
- package/src/assets/shapes/leaf-clover4.svg +0 -1
- package/src/assets/shapes/leaf-clover8.svg +0 -1
- package/src/assets/shapes/loading-indicator.svg +0 -1
- package/src/assets/shapes/oval.svg +0 -1
- package/src/assets/shapes/pentagon.svg +0 -1
- package/src/assets/shapes/pill.svg +0 -1
- package/src/assets/shapes/pixel-circle.svg +0 -1
- package/src/assets/shapes/pixel-triangle.svg +0 -1
- package/src/assets/shapes/puffy-diamond.svg +0 -1
- package/src/assets/shapes/puffy.svg +0 -1
- package/src/assets/shapes/semicircle.svg +0 -1
- package/src/assets/shapes/sided-cookie12.svg +0 -1
- package/src/assets/shapes/sided-cookie4.svg +0 -1
- package/src/assets/shapes/sided-cookie6.svg +0 -1
- package/src/assets/shapes/sided-cookie7.svg +0 -1
- package/src/assets/shapes/sided-cookie9.svg +0 -1
- package/src/assets/shapes/slanted.svg +0 -1
- package/src/assets/shapes/soft-boom.svg +0 -1
- package/src/assets/shapes/soft-burst.svg +0 -1
- package/src/assets/shapes/square.svg +0 -1
- package/src/assets/shapes/sunny.svg +0 -1
- package/src/assets/shapes/triangle.svg +0 -1
- package/src/assets/shapes/very-sunny.svg +0 -1
- package/src/assets/shapes/wavy-circle.svg +0 -1
- package/src/assets/shapes/wavy.svg +0 -1
|
@@ -1,3 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file components/_base/index.ts
|
|
3
|
+
* @package @moni-labs/moni-ui
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @contributors Moni Labs & Contributors
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @module _base
|
|
9
|
+
*
|
|
10
|
+
* Re-exports the foundational building blocks shared by all Moni Web Components.
|
|
11
|
+
*
|
|
12
|
+
* **Exports:**
|
|
13
|
+
* - {@link MoniElement} — Abstract LitElement base class every component extends.
|
|
14
|
+
* - {@link sharedStyles} — Baseline CSS: box-sizing, token bridge, utility classes.
|
|
15
|
+
* - {@link fieldStyles} — CSS for field-like input components (text-field, select, etc.).
|
|
16
|
+
*
|
|
17
|
+
* `interactionStyles` is intentionally **not** re-exported from this barrel —
|
|
18
|
+
* it should be imported directly by components that need state layers to avoid
|
|
19
|
+
* adding its CSS to components that don't use `.interactive`.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```ts
|
|
23
|
+
* import { MoniElement, sharedStyles, fieldStyles } from './_base/index.js';
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
1
26
|
export { MoniElement } from './moni-element.js';
|
|
2
27
|
export { sharedStyles } from './shared-styles.js';
|
|
3
28
|
export { fieldStyles } from './field-styles.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/_base/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/_base/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,3 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file components/_base/index.ts
|
|
3
|
+
* @package @moni-labs/moni-ui
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @contributors Moni Labs & Contributors
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @module _base
|
|
9
|
+
*
|
|
10
|
+
* Re-exports the foundational building blocks shared by all Moni Web Components.
|
|
11
|
+
*
|
|
12
|
+
* **Exports:**
|
|
13
|
+
* - {@link MoniElement} — Abstract LitElement base class every component extends.
|
|
14
|
+
* - {@link sharedStyles} — Baseline CSS: box-sizing, token bridge, utility classes.
|
|
15
|
+
* - {@link fieldStyles} — CSS for field-like input components (text-field, select, etc.).
|
|
16
|
+
*
|
|
17
|
+
* `interactionStyles` is intentionally **not** re-exported from this barrel —
|
|
18
|
+
* it should be imported directly by components that need state layers to avoid
|
|
19
|
+
* adding its CSS to components that don't use `.interactive`.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```ts
|
|
23
|
+
* import { MoniElement, sharedStyles, fieldStyles } from './_base/index.js';
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
1
26
|
export { MoniElement } from './moni-element.js';
|
|
2
27
|
export { sharedStyles } from './shared-styles.js';
|
|
3
28
|
export { fieldStyles } from './field-styles.js';
|
|
@@ -1,21 +1,48 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @file components/_base/interaction-styles.ts
|
|
3
|
+
* @package @moni-labs/moni-ui
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @contributors Moni Labs & Contributors
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Material Design 3 State Layer system — CSS-only implementation.
|
|
9
|
+
*
|
|
10
|
+
* Material Design 3 defines **state layers** as semi-transparent color overlays
|
|
11
|
+
* that communicate interactive state visually to the user. They are applied on
|
|
12
|
+
* top of a component's background without altering its base color, allowing
|
|
13
|
+
* correct rendering across all surface and container colors.
|
|
3
14
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
15
|
+
* **M3 state layer opacity values (from the spec):**
|
|
16
|
+
* | State | Opacity |
|
|
17
|
+
* |-----------|---------|
|
|
18
|
+
* | Hover | 8% |
|
|
19
|
+
* | Focus | 12% |
|
|
20
|
+
* | Pressed | 12% |
|
|
21
|
+
* | Dragged | 16% |
|
|
7
22
|
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
23
|
+
* **Implementation strategy:**
|
|
24
|
+
* The state layer is rendered as a `::before` pseudo-element whose `opacity`
|
|
25
|
+
* transitions between states. A second `::after` pseudo-element provides a
|
|
26
|
+
* CSS-only center-origin ripple on press. For pointer-origin ripples
|
|
27
|
+
* (where the ripple starts at the tap/click point), use `<moni-ripple>` instead.
|
|
11
28
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
29
|
+
* **Host element requirements:**
|
|
30
|
+
* The element bearing the `.interactive` class MUST have:
|
|
31
|
+
* - `position: relative` — so `::before` / `::after` are contained within it.
|
|
32
|
+
* - `overflow: hidden` — so the expanding ripple clips to the element's shape.
|
|
33
|
+
* - `isolation: isolate` — prevents the pseudo-elements from bleeding into
|
|
34
|
+
* stacking contexts created by parent elements.
|
|
14
35
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
36
|
+
* **Usage:**
|
|
37
|
+
* ```ts
|
|
38
|
+
* static override styles = [sharedStyles, interactionStyles, css`...`];
|
|
39
|
+
* ```
|
|
40
|
+
* Then in the template:
|
|
41
|
+
* ```html
|
|
42
|
+
* <button class="interactive">Click me</button>
|
|
43
|
+
* ```
|
|
17
44
|
*
|
|
18
|
-
*
|
|
45
|
+
* @see {@link https://m3.material.io/foundations/interaction/states/overview M3 State overview}
|
|
19
46
|
*/
|
|
20
47
|
export declare const interactionStyles: import("lit").CSSResult;
|
|
21
48
|
export default interactionStyles;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction-styles.d.ts","sourceRoot":"","sources":["../../../src/components/_base/interaction-styles.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"interaction-styles.d.ts","sourceRoot":"","sources":["../../../src/components/_base/interaction-styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,eAAO,MAAM,iBAAiB,yBA8H7B,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -1,106 +1,156 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file components/_base/interaction-styles.ts
|
|
3
|
+
* @package @moni-labs/moni-ui
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @contributors Moni Labs & Contributors
|
|
6
|
+
*/
|
|
1
7
|
import { css } from 'lit';
|
|
2
8
|
/**
|
|
3
|
-
*
|
|
9
|
+
* Material Design 3 State Layer system — CSS-only implementation.
|
|
10
|
+
*
|
|
11
|
+
* Material Design 3 defines **state layers** as semi-transparent color overlays
|
|
12
|
+
* that communicate interactive state visually to the user. They are applied on
|
|
13
|
+
* top of a component's background without altering its base color, allowing
|
|
14
|
+
* correct rendering across all surface and container colors.
|
|
4
15
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
16
|
+
* **M3 state layer opacity values (from the spec):**
|
|
17
|
+
* | State | Opacity |
|
|
18
|
+
* |-----------|---------|
|
|
19
|
+
* | Hover | 8% |
|
|
20
|
+
* | Focus | 12% |
|
|
21
|
+
* | Pressed | 12% |
|
|
22
|
+
* | Dragged | 16% |
|
|
8
23
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
24
|
+
* **Implementation strategy:**
|
|
25
|
+
* The state layer is rendered as a `::before` pseudo-element whose `opacity`
|
|
26
|
+
* transitions between states. A second `::after` pseudo-element provides a
|
|
27
|
+
* CSS-only center-origin ripple on press. For pointer-origin ripples
|
|
28
|
+
* (where the ripple starts at the tap/click point), use `<moni-ripple>` instead.
|
|
12
29
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
30
|
+
* **Host element requirements:**
|
|
31
|
+
* The element bearing the `.interactive` class MUST have:
|
|
32
|
+
* - `position: relative` — so `::before` / `::after` are contained within it.
|
|
33
|
+
* - `overflow: hidden` — so the expanding ripple clips to the element's shape.
|
|
34
|
+
* - `isolation: isolate` — prevents the pseudo-elements from bleeding into
|
|
35
|
+
* stacking contexts created by parent elements.
|
|
15
36
|
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
37
|
+
* **Usage:**
|
|
38
|
+
* ```ts
|
|
39
|
+
* static override styles = [sharedStyles, interactionStyles, css`...`];
|
|
40
|
+
* ```
|
|
41
|
+
* Then in the template:
|
|
42
|
+
* ```html
|
|
43
|
+
* <button class="interactive">Click me</button>
|
|
44
|
+
* ```
|
|
18
45
|
*
|
|
19
|
-
*
|
|
46
|
+
* @see {@link https://m3.material.io/foundations/interaction/states/overview M3 State overview}
|
|
20
47
|
*/
|
|
21
48
|
export const interactionStyles = css `
|
|
22
|
-
/* ─── State layer opacity tokens (M3 spec)
|
|
49
|
+
/* ─── State layer opacity tokens (M3 spec values) ──────────────────────── */
|
|
23
50
|
:host {
|
|
51
|
+
/** Opacity applied on hover. M3 spec: 8%. */
|
|
24
52
|
--_state-hover: 0.08;
|
|
53
|
+
/** Opacity applied on keyboard focus. M3 spec: 12%. */
|
|
25
54
|
--_state-focus: 0.12;
|
|
55
|
+
/** Opacity applied on press/active. M3 spec: 12%. */
|
|
26
56
|
--_state-pressed: 0.12;
|
|
57
|
+
/** Opacity applied during drag. M3 spec: 16%. */
|
|
27
58
|
--_state-dragged: 0.16;
|
|
59
|
+
/**
|
|
60
|
+
* Color of the state layer overlay.
|
|
61
|
+
* Defaults to currentColor so it adapts to the element's text color.
|
|
62
|
+
* Override with --_state-color: var(--primary) for selected states.
|
|
63
|
+
*/
|
|
28
64
|
--_state-color: currentColor;
|
|
29
65
|
}
|
|
30
66
|
|
|
31
|
-
/* ─── The
|
|
67
|
+
/* ─── The interactive container ─────────────────────────────────────────── */
|
|
32
68
|
.interactive {
|
|
33
69
|
position: relative;
|
|
34
70
|
overflow: hidden;
|
|
35
|
-
/*
|
|
71
|
+
/* isolation: isolate prevents the pseudo-elements from mixing with
|
|
72
|
+
parent stacking contexts that use opacity or transform. */
|
|
36
73
|
isolation: isolate;
|
|
37
74
|
}
|
|
38
75
|
|
|
76
|
+
/* ─── State layer pseudo-element (::before) ─────────────────────────────── */
|
|
77
|
+
/* The layer sits above the element's background but below its content. */
|
|
39
78
|
.interactive::before {
|
|
40
79
|
content: '';
|
|
41
80
|
position: absolute;
|
|
42
81
|
inset: 0;
|
|
82
|
+
/* Inherit the border-radius from the host so the layer clips correctly
|
|
83
|
+
on rounded buttons, chips, and cards. */
|
|
43
84
|
border-radius: inherit;
|
|
44
85
|
background-color: var(--_state-color);
|
|
45
|
-
opacity: 0;
|
|
46
|
-
pointer-events: none;
|
|
47
|
-
/* Use the same transition speed as other properties on the element */
|
|
86
|
+
opacity: 0; /* Hidden by default; transitions in on state change. */
|
|
87
|
+
pointer-events: none; /* Never intercept pointer events. */
|
|
48
88
|
transition: opacity var(--speed2, 200ms) ease;
|
|
49
|
-
/*
|
|
89
|
+
/* z-index 0 places the layer above the background (z=-1 would be behind). */
|
|
50
90
|
z-index: 0;
|
|
51
91
|
}
|
|
52
92
|
|
|
53
|
-
/* Hover */
|
|
93
|
+
/* Hover: slight overlay to signal interactivity. */
|
|
54
94
|
.interactive:hover::before {
|
|
55
95
|
opacity: var(--_state-hover);
|
|
56
96
|
}
|
|
57
97
|
|
|
58
|
-
/* Focus-visible
|
|
98
|
+
/* Focus-visible: stronger overlay for keyboard / programmatic focus.
|
|
99
|
+
:focus-visible is preferred over :focus to avoid showing the indicator
|
|
100
|
+
on mouse clicks (which have their own press state). */
|
|
59
101
|
.interactive:focus-visible::before {
|
|
60
102
|
opacity: var(--_state-focus);
|
|
61
103
|
}
|
|
62
104
|
|
|
63
|
-
/* Pressed / active
|
|
105
|
+
/* Pressed / active: same opacity as focus but instant onset — the transition
|
|
106
|
+
handles the fade-out on pointer-up via the inherited duration. */
|
|
64
107
|
.interactive:active::before {
|
|
65
108
|
opacity: var(--_state-pressed);
|
|
66
|
-
/*
|
|
109
|
+
/* transition-duration: 0s — state layer appears instantaneously on press. */
|
|
67
110
|
transition-duration: 0s;
|
|
68
111
|
}
|
|
69
112
|
|
|
70
|
-
/* Disabled — no state layer at all */
|
|
113
|
+
/* Disabled — no state layer rendered at all (not just hidden). */
|
|
71
114
|
.interactive:disabled::before,
|
|
72
115
|
.interactive[aria-disabled='true']::before,
|
|
73
116
|
:host([disabled]) .interactive::before {
|
|
74
117
|
display: none;
|
|
75
118
|
}
|
|
76
119
|
|
|
77
|
-
/* ─── Selected/active modifier
|
|
78
|
-
/* When
|
|
79
|
-
|
|
120
|
+
/* ─── Selected / active modifier ────────────────────────────────────────── */
|
|
121
|
+
/* When a component is in a "selected" state (active nav item, checked chip,
|
|
122
|
+
current tab), the state layer color switches to the primary color so the
|
|
123
|
+
overlay is visually meaningful even on primary-container backgrounds. */
|
|
80
124
|
.interactive.selected::before,
|
|
81
125
|
.interactive[aria-selected='true']::before,
|
|
82
126
|
.interactive[aria-current]::before {
|
|
83
127
|
--_state-color: var(--primary);
|
|
128
|
+
/* Always show a subtle primary overlay to reinforce the selected state. */
|
|
84
129
|
opacity: var(--_state-hover);
|
|
85
130
|
}
|
|
86
131
|
.interactive.selected:hover::before,
|
|
87
132
|
.interactive[aria-selected='true']:hover::before {
|
|
133
|
+
/* Increase opacity slightly on hover within a selected element. */
|
|
88
134
|
opacity: calc(var(--_state-hover) * 1.5);
|
|
89
135
|
}
|
|
90
136
|
|
|
91
|
-
/* ───
|
|
137
|
+
/* ─── Content z-index ────────────────────────────────────────────────────── */
|
|
138
|
+
/* Ensure all direct children of .interactive render above the state layer
|
|
139
|
+
(z-index: 0) and the ripple pseudo-element (z-index: 0). */
|
|
92
140
|
.interactive > * {
|
|
93
141
|
position: relative;
|
|
94
142
|
z-index: 1;
|
|
95
143
|
}
|
|
96
144
|
|
|
97
|
-
/* ───
|
|
98
|
-
/*
|
|
99
|
-
For a pointer-origin ripple
|
|
145
|
+
/* ─── CSS-only center-origin ripple (::after) ───────────────────────────── */
|
|
146
|
+
/* Provides a basic expanding circle animation on :active. The circle always
|
|
147
|
+
originates from the element's center. For a pointer-origin ripple (where
|
|
148
|
+
the ripple starts at the exact tap/click coordinate), use <moni-ripple>
|
|
149
|
+
with JS activation instead. */
|
|
100
150
|
.interactive::after {
|
|
101
151
|
content: '';
|
|
102
152
|
position: absolute;
|
|
103
|
-
inset: 50%;
|
|
153
|
+
inset: 50%; /* Collapses to a point at the center. */
|
|
104
154
|
border-radius: 50%;
|
|
105
155
|
background-color: var(--_state-color);
|
|
106
156
|
opacity: 0;
|
|
@@ -109,11 +159,13 @@ export const interactionStyles = css `
|
|
|
109
159
|
z-index: 0;
|
|
110
160
|
}
|
|
111
161
|
|
|
162
|
+
/* Trigger the ripple keyframe animation on active/press. */
|
|
112
163
|
.interactive:active::after {
|
|
113
164
|
animation: to-ripple var(--speed3, 300ms) cubic-bezier(0.2, 0, 0, 1) forwards;
|
|
114
165
|
}
|
|
115
166
|
|
|
116
|
-
/*
|
|
167
|
+
/* Respect the user's reduced-motion preference by disabling the ripple.
|
|
168
|
+
The ::before state layer still functions, providing a static visual cue. */
|
|
117
169
|
@media (prefers-reduced-motion: reduce) {
|
|
118
170
|
.interactive::after {
|
|
119
171
|
display: none;
|
|
@@ -1,17 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file components/_base/moni-element.ts
|
|
3
|
+
* @package @moni-labs/moni-ui
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @contributors Moni Labs & Contributors
|
|
6
|
+
*/
|
|
1
7
|
import { LitElement } from 'lit';
|
|
2
8
|
/**
|
|
3
|
-
*
|
|
9
|
+
* Abstract base class for every Moni UI Web Component.
|
|
10
|
+
*
|
|
11
|
+
* **Design philosophy — visual shells, no behavior:**
|
|
12
|
+
* All Moni components are intentionally "dumb" — they encapsulate only
|
|
13
|
+
* visual structure, styling, and attribute-to-DOM mapping. Consumers own
|
|
14
|
+
* interaction logic, validation, async data fetching, and state management.
|
|
15
|
+
* This keeps components framework-agnostic and composable with any
|
|
16
|
+
* state management solution (Svelte stores, Vue reactive, vanilla JS, etc.).
|
|
17
|
+
*
|
|
18
|
+
* **Shadow DOM:**
|
|
19
|
+
* The default `LitElement.createRenderRoot()` returns an open shadow root,
|
|
20
|
+
* which is preserved here unchanged. Shadow DOM encapsulation ensures that
|
|
21
|
+
* internal CSS class names (`.button`, `.field`, `.slider`, etc.) do not leak
|
|
22
|
+
* into or collide with the consumer's global stylesheet.
|
|
23
|
+
*
|
|
24
|
+
* **Extension contract:**
|
|
25
|
+
* Every subclass must:
|
|
26
|
+
* 1. Be decorated with `@customElement('moni-<name>')`.
|
|
27
|
+
* 2. Define `static override styles = [sharedStyles, css`...`]`.
|
|
28
|
+
* 3. Implement `override render(): TemplateResult`.
|
|
4
29
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* and state management themselves.
|
|
30
|
+
* Subclasses MUST NOT add behavior (event handling, timers, fetch calls) that
|
|
31
|
+
* is not directly related to rendering the shadow DOM. See CONTRIBUTING.md
|
|
32
|
+
* for the full component authoring guide.
|
|
9
33
|
*
|
|
10
|
-
*
|
|
11
|
-
* root, which is what we want — BeerCSS class names like `.button`, `.field`,
|
|
12
|
-
* `.slider`, etc. live inside the shadow root and stay encapsulated.
|
|
34
|
+
* @see {@link https://lit.dev/docs/components/overview/ Lit component overview}
|
|
13
35
|
*/
|
|
14
36
|
export declare class MoniElement extends LitElement {
|
|
37
|
+
/**
|
|
38
|
+
* Returns the component's render root.
|
|
39
|
+
*
|
|
40
|
+
* Delegates to `LitElement.createRenderRoot()` which attaches an **open**
|
|
41
|
+
* shadow root (`{ mode: 'open' }`). Open mode allows external tools (browser
|
|
42
|
+
* devtools, testing frameworks) to traverse the shadow tree.
|
|
43
|
+
*
|
|
44
|
+
* This override exists explicitly to document the shadow root mode and to
|
|
45
|
+
* provide a hook for subclasses that may need to change the root in the future
|
|
46
|
+
* (e.g. to support `adoptedStyleSheets` in a specific environment).
|
|
47
|
+
*
|
|
48
|
+
* @returns The shadow root that Lit will render templates into.
|
|
49
|
+
*/
|
|
15
50
|
protected createRenderRoot(): HTMLElement | DocumentFragment;
|
|
16
51
|
}
|
|
17
52
|
export default MoniElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"moni-element.d.ts","sourceRoot":"","sources":["../../../src/components/_base/moni-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAEjC
|
|
1
|
+
{"version":3,"file":"moni-element.d.ts","sourceRoot":"","sources":["../../../src/components/_base/moni-element.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,qBAAa,WAAY,SAAQ,UAAU;IAC1C;;;;;;;;;;;;OAYG;cACgB,gBAAgB;CAGnC;AAED,eAAe,WAAW,CAAC"}
|
|
@@ -1,17 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file components/_base/moni-element.ts
|
|
3
|
+
* @package @moni-labs/moni-ui
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @contributors Moni Labs & Contributors
|
|
6
|
+
*/
|
|
1
7
|
import { LitElement } from 'lit';
|
|
2
8
|
/**
|
|
3
|
-
*
|
|
9
|
+
* Abstract base class for every Moni UI Web Component.
|
|
10
|
+
*
|
|
11
|
+
* **Design philosophy — visual shells, no behavior:**
|
|
12
|
+
* All Moni components are intentionally "dumb" — they encapsulate only
|
|
13
|
+
* visual structure, styling, and attribute-to-DOM mapping. Consumers own
|
|
14
|
+
* interaction logic, validation, async data fetching, and state management.
|
|
15
|
+
* This keeps components framework-agnostic and composable with any
|
|
16
|
+
* state management solution (Svelte stores, Vue reactive, vanilla JS, etc.).
|
|
17
|
+
*
|
|
18
|
+
* **Shadow DOM:**
|
|
19
|
+
* The default `LitElement.createRenderRoot()` returns an open shadow root,
|
|
20
|
+
* which is preserved here unchanged. Shadow DOM encapsulation ensures that
|
|
21
|
+
* internal CSS class names (`.button`, `.field`, `.slider`, etc.) do not leak
|
|
22
|
+
* into or collide with the consumer's global stylesheet.
|
|
23
|
+
*
|
|
24
|
+
* **Extension contract:**
|
|
25
|
+
* Every subclass must:
|
|
26
|
+
* 1. Be decorated with `@customElement('moni-<name>')`.
|
|
27
|
+
* 2. Define `static override styles = [sharedStyles, css`...`]`.
|
|
28
|
+
* 3. Implement `override render(): TemplateResult`.
|
|
4
29
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* and state management themselves.
|
|
30
|
+
* Subclasses MUST NOT add behavior (event handling, timers, fetch calls) that
|
|
31
|
+
* is not directly related to rendering the shadow DOM. See CONTRIBUTING.md
|
|
32
|
+
* for the full component authoring guide.
|
|
9
33
|
*
|
|
10
|
-
*
|
|
11
|
-
* root, which is what we want — BeerCSS class names like `.button`, `.field`,
|
|
12
|
-
* `.slider`, etc. live inside the shadow root and stay encapsulated.
|
|
34
|
+
* @see {@link https://lit.dev/docs/components/overview/ Lit component overview}
|
|
13
35
|
*/
|
|
14
36
|
export class MoniElement extends LitElement {
|
|
37
|
+
/**
|
|
38
|
+
* Returns the component's render root.
|
|
39
|
+
*
|
|
40
|
+
* Delegates to `LitElement.createRenderRoot()` which attaches an **open**
|
|
41
|
+
* shadow root (`{ mode: 'open' }`). Open mode allows external tools (browser
|
|
42
|
+
* devtools, testing frameworks) to traverse the shadow tree.
|
|
43
|
+
*
|
|
44
|
+
* This override exists explicitly to document the shadow root mode and to
|
|
45
|
+
* provide a hook for subclasses that may need to change the root in the future
|
|
46
|
+
* (e.g. to support `adoptedStyleSheets` in a specific environment).
|
|
47
|
+
*
|
|
48
|
+
* @returns The shadow root that Lit will render templates into.
|
|
49
|
+
*/
|
|
15
50
|
createRenderRoot() {
|
|
16
51
|
return super.createRenderRoot();
|
|
17
52
|
}
|
|
@@ -1,21 +1,45 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
2
|
+
* @file components/_base/shared-styles.ts
|
|
3
|
+
* @package @moni-labs/moni-ui
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @contributors Moni Labs & Contributors
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Baseline CSS injected into the shadow root of **every** Moni Web Component.
|
|
9
|
+
*
|
|
10
|
+
* This stylesheet is the foundational layer of the Moni design system. It serves
|
|
11
|
+
* four distinct responsibilities:
|
|
12
|
+
*
|
|
13
|
+
* **1. Box-sizing reset**
|
|
14
|
+
* Applies `box-sizing: border-box` to `:host`, all descendants, and slotted
|
|
15
|
+
* elements so every component has predictable sizing without override surprises.
|
|
16
|
+
*
|
|
17
|
+
* **2. CSS custom property bridge (Token namespace)**
|
|
18
|
+
* The component library uses short "bare" variable names internally (e.g.
|
|
19
|
+
* `var(--primary)`) for concise CSS. Because shadow DOM isolates custom
|
|
20
|
+
* properties by default, this sheet creates a bridge that resolves these
|
|
21
|
+
* internal names from the global token namespaces in the following priority:
|
|
22
|
+
*
|
|
23
|
+
* `--moni-*` (Moni namespace) → `--md-sys-color-*` (MD3 spec) → hardcoded M3 default
|
|
24
|
+
*
|
|
25
|
+
* This lets a host document use any of the three namespaces to theme components.
|
|
26
|
+
*
|
|
27
|
+
* **3. MD3 `--color-*` aliases**
|
|
28
|
+
* A second `:host` block maps the older `--color-<role>` prefix to the primary
|
|
29
|
+
* bare tokens. These aliases ensure backward compatibility with Moni apps
|
|
30
|
+
* (MoniAuth-Client, MoniAuth-Yo) that still reference `--color-primary`, etc.
|
|
31
|
+
*
|
|
32
|
+
* **4. Utility classes**
|
|
33
|
+
* Provides `.truncate` (single-line text clipping) and `.visually-hidden`
|
|
34
|
+
* (screen-reader-only content) for use inside component shadow trees.
|
|
35
|
+
*
|
|
36
|
+
* **Usage:**
|
|
37
|
+
* ```ts
|
|
38
|
+
* static override styles = [sharedStyles, css`/* component-specific styles *\/`];
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* @see {@link fieldStyles} — Additional styles for input field components.
|
|
42
|
+
* @see {@link interactionStyles} — M3 state layer system for interactive elements.
|
|
19
43
|
*/
|
|
20
44
|
export declare const sharedStyles: import("lit").CSSResult;
|
|
21
45
|
export default sharedStyles;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-styles.d.ts","sourceRoot":"","sources":["../../../src/components/_base/shared-styles.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"shared-styles.d.ts","sourceRoot":"","sources":["../../../src/components/_base/shared-styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,eAAO,MAAM,YAAY,yBAgMxB,CAAC;AAEF,eAAe,YAAY,CAAC"}
|