@material/web 0.1.0-alpha.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/LICENSE +202 -0
- package/README.md +34 -0
- package/actionelement/action-element.d.ts +79 -0
- package/actionelement/action-element.js +97 -0
- package/actionelement/action-element.js.map +1 -0
- package/badge/badge.d.ts +19 -0
- package/badge/badge.js +22 -0
- package/badge/badge.js.map +1 -0
- package/badge/lib/_badge-theme.scss +118 -0
- package/badge/lib/_badge.scss +41 -0
- package/badge/lib/badge-styles.css.d.ts +1 -0
- package/badge/lib/badge-styles.css.js +9 -0
- package/badge/lib/badge-styles.css.js.map +1 -0
- package/badge/lib/badge-styles.scss +16 -0
- package/badge/lib/badge.d.ts +15 -0
- package/badge/lib/badge.js +31 -0
- package/badge/lib/badge.js.map +1 -0
- package/button/_elevated-button.scss +8 -0
- package/button/_filled-button.scss +8 -0
- package/button/_outlined-button.scss +8 -0
- package/button/_text-button.scss +8 -0
- package/button/_tonal-button.scss +8 -0
- package/button/elevated-button.d.ts +19 -0
- package/button/elevated-button.js +24 -0
- package/button/elevated-button.js.map +1 -0
- package/button/elevated-link-button.d.ts +19 -0
- package/button/elevated-link-button.js +24 -0
- package/button/elevated-link-button.js.map +1 -0
- package/button/filled-button.d.ts +19 -0
- package/button/filled-button.js +23 -0
- package/button/filled-button.js.map +1 -0
- package/button/filled-link-button.d.ts +19 -0
- package/button/filled-link-button.js +23 -0
- package/button/filled-link-button.js.map +1 -0
- package/button/harness.d.ts +13 -0
- package/button/harness.js +16 -0
- package/button/harness.js.map +1 -0
- package/button/lib/_button-theme.scss +204 -0
- package/button/lib/_button.scss +88 -0
- package/button/lib/_elevated-button-theme.scss +53 -0
- package/button/lib/_elevated-button.scss +8 -0
- package/button/lib/_elevation-theme.scss +94 -0
- package/button/lib/_filled-button-theme.scss +53 -0
- package/button/lib/_filled-button.scss +8 -0
- package/button/lib/_icon-theme.scss +67 -0
- package/button/lib/_icon.scss +49 -0
- package/button/lib/_outlined-button-theme.scss +112 -0
- package/button/lib/_outlined-button.scss +25 -0
- package/button/lib/_text-button-theme.scss +57 -0
- package/button/lib/_text-button.scss +8 -0
- package/button/lib/_tonal-button-theme.scss +53 -0
- package/button/lib/_tonal-button.scss +8 -0
- package/button/lib/_touch-target.scss +16 -0
- package/button/lib/button.d.ts +76 -0
- package/button/lib/button.js +238 -0
- package/button/lib/button.js.map +1 -0
- package/button/lib/elevated-button.d.ts +15 -0
- package/button/lib/elevated-button.js +22 -0
- package/button/lib/elevated-button.js.map +1 -0
- package/button/lib/elevated-link-button.d.ts +15 -0
- package/button/lib/elevated-link-button.js +22 -0
- package/button/lib/elevated-link-button.js.map +1 -0
- package/button/lib/elevated-styles.css.d.ts +1 -0
- package/button/lib/elevated-styles.css.js +9 -0
- package/button/lib/elevated-styles.css.js.map +1 -0
- package/button/lib/elevated-styles.scss +18 -0
- package/button/lib/filled-button.d.ts +12 -0
- package/button/lib/filled-button.js +17 -0
- package/button/lib/filled-button.js.map +1 -0
- package/button/lib/filled-link-button.d.ts +12 -0
- package/button/lib/filled-link-button.js +17 -0
- package/button/lib/filled-link-button.js.map +1 -0
- package/button/lib/filled-styles.css.d.ts +1 -0
- package/button/lib/filled-styles.css.js +9 -0
- package/button/lib/filled-styles.css.js.map +1 -0
- package/button/lib/filled-styles.scss +16 -0
- package/button/lib/link-button.d.ts +17 -0
- package/button/lib/link-button.js +53 -0
- package/button/lib/link-button.js.map +1 -0
- package/button/lib/outlined-button.d.ts +15 -0
- package/button/lib/outlined-button.js +22 -0
- package/button/lib/outlined-button.js.map +1 -0
- package/button/lib/outlined-link-button.d.ts +15 -0
- package/button/lib/outlined-link-button.js +22 -0
- package/button/lib/outlined-link-button.js.map +1 -0
- package/button/lib/outlined-styles.css.d.ts +1 -0
- package/button/lib/outlined-styles.css.js +9 -0
- package/button/lib/outlined-styles.css.js.map +1 -0
- package/button/lib/outlined-styles.scss +18 -0
- package/button/lib/shared-styles.css.d.ts +1 -0
- package/button/lib/shared-styles.css.js +9 -0
- package/button/lib/shared-styles.css.js.map +1 -0
- package/button/lib/shared-styles.scss +12 -0
- package/button/lib/state.d.ts +10 -0
- package/button/lib/state.js +7 -0
- package/button/lib/state.js.map +1 -0
- package/button/lib/text-button.d.ts +12 -0
- package/button/lib/text-button.js +17 -0
- package/button/lib/text-button.js.map +1 -0
- package/button/lib/text-link-button.d.ts +12 -0
- package/button/lib/text-link-button.js +17 -0
- package/button/lib/text-link-button.js.map +1 -0
- package/button/lib/text-styles.css.d.ts +1 -0
- package/button/lib/text-styles.css.js +9 -0
- package/button/lib/text-styles.css.js.map +1 -0
- package/button/lib/text-styles.scss +16 -0
- package/button/lib/tonal-button.d.ts +12 -0
- package/button/lib/tonal-button.js +17 -0
- package/button/lib/tonal-button.js.map +1 -0
- package/button/lib/tonal-link-button.d.ts +12 -0
- package/button/lib/tonal-link-button.js +17 -0
- package/button/lib/tonal-link-button.js.map +1 -0
- package/button/lib/tonal-styles.css.d.ts +1 -0
- package/button/lib/tonal-styles.css.js +9 -0
- package/button/lib/tonal-styles.css.js.map +1 -0
- package/button/lib/tonal-styles.scss +16 -0
- package/button/outlined-button.d.ts +19 -0
- package/button/outlined-button.js +23 -0
- package/button/outlined-button.js.map +1 -0
- package/button/outlined-link-button.d.ts +19 -0
- package/button/outlined-link-button.js +23 -0
- package/button/outlined-link-button.js.map +1 -0
- package/button/text-button.d.ts +19 -0
- package/button/text-button.js +23 -0
- package/button/text-button.js.map +1 -0
- package/button/text-link-button.d.ts +19 -0
- package/button/text-link-button.js +23 -0
- package/button/text-link-button.js.map +1 -0
- package/button/tonal-button.d.ts +19 -0
- package/button/tonal-button.js +23 -0
- package/button/tonal-button.js.map +1 -0
- package/button/tonal-link-button.d.ts +19 -0
- package/button/tonal-link-button.js +23 -0
- package/button/tonal-link-button.js.map +1 -0
- package/checkbox/_checkbox.scss +1 -0
- package/checkbox/checkbox.d.ts +15 -0
- package/checkbox/checkbox.js +18 -0
- package/checkbox/checkbox.js.map +1 -0
- package/checkbox/harness.d.ts +13 -0
- package/checkbox/harness.js +16 -0
- package/checkbox/harness.js.map +1 -0
- package/checkbox/lib/_checkbox-theme.scss +532 -0
- package/checkbox/lib/_checkbox.scss +424 -0
- package/checkbox/lib/checkbox-styles.css.d.ts +1 -0
- package/checkbox/lib/checkbox-styles.css.js +9 -0
- package/checkbox/lib/checkbox-styles.css.js.map +1 -0
- package/checkbox/lib/checkbox-styles.scss +15 -0
- package/checkbox/lib/checkbox.d.ts +56 -0
- package/checkbox/lib/checkbox.js +238 -0
- package/checkbox/lib/checkbox.js.map +1 -0
- package/chips/action/lib/action.d.ts +34 -0
- package/chips/action/lib/action.js +83 -0
- package/chips/action/lib/action.js.map +1 -0
- package/chips/action/lib/adapter.d.ts +21 -0
- package/chips/action/lib/adapter.js +7 -0
- package/chips/action/lib/adapter.js.map +1 -0
- package/chips/action/lib/constants.d.ts +62 -0
- package/chips/action/lib/constants.js +69 -0
- package/chips/action/lib/constants.js.map +1 -0
- package/chips/action/lib/foundation.d.ts +31 -0
- package/chips/action/lib/foundation.js +151 -0
- package/chips/action/lib/foundation.js.map +1 -0
- package/chips/action/lib/link-action.d.ts +17 -0
- package/chips/action/lib/link-action.js +43 -0
- package/chips/action/lib/link-action.js.map +1 -0
- package/chips/action/lib/presentational-action.d.ts +15 -0
- package/chips/action/lib/presentational-action.js +30 -0
- package/chips/action/lib/presentational-action.js.map +1 -0
- package/chips/action/lib/primary-action.d.ts +29 -0
- package/chips/action/lib/primary-action.js +83 -0
- package/chips/action/lib/primary-action.js.map +1 -0
- package/chips/action/lib/primary-foundation.d.ts +16 -0
- package/chips/action/lib/primary-foundation.js +24 -0
- package/chips/action/lib/primary-foundation.js.map +1 -0
- package/chips/action/lib/selectable-action.d.ts +17 -0
- package/chips/action/lib/selectable-action.js +57 -0
- package/chips/action/lib/selectable-action.js.map +1 -0
- package/chips/action/lib/trailing-action.d.ts +20 -0
- package/chips/action/lib/trailing-action.js +62 -0
- package/chips/action/lib/trailing-action.js.map +1 -0
- package/chips/action/lib/trailing-foundation.d.ts +16 -0
- package/chips/action/lib/trailing-foundation.js +23 -0
- package/chips/action/lib/trailing-foundation.js.map +1 -0
- package/chips/action/lib/types.d.ts +23 -0
- package/chips/action/lib/types.js +7 -0
- package/chips/action/lib/types.js.map +1 -0
- package/chips/chip/lib/_assist-chip-theme.scss +101 -0
- package/chips/chip/lib/_chip-theme.scss +1329 -0
- package/chips/chip/lib/_chip.scss +427 -0
- package/chips/chip/lib/_filter-chip-theme.scss +132 -0
- package/chips/chip/lib/_input-chip-theme.scss +103 -0
- package/chips/chip/lib/_suggestion-chip-theme.scss +94 -0
- package/chips/chip/lib/adapter.d.ts +50 -0
- package/chips/chip/lib/adapter.js +7 -0
- package/chips/chip/lib/adapter.js.map +1 -0
- package/chips/chip/lib/constants.d.ts +43 -0
- package/chips/chip/lib/constants.js +48 -0
- package/chips/chip/lib/constants.js.map +1 -0
- package/chips/chip/lib/foundation.d.ts +41 -0
- package/chips/chip/lib/foundation.js +256 -0
- package/chips/chip/lib/foundation.js.map +1 -0
- package/chips/chip/lib/types.d.ts +42 -0
- package/chips/chip/lib/types.js +7 -0
- package/chips/chip/lib/types.js.map +1 -0
- package/chips/chipset/lib/_chip-set-theme.scss +48 -0
- package/chips/chipset/lib/_chip-set.scss +46 -0
- package/chips/chipset/lib/adapter.d.ts +45 -0
- package/chips/chipset/lib/adapter.js +7 -0
- package/chips/chipset/lib/adapter.js.map +1 -0
- package/chips/chipset/lib/constants.d.ts +26 -0
- package/chips/chipset/lib/constants.js +30 -0
- package/chips/chipset/lib/constants.js.map +1 -0
- package/chips/chipset/lib/foundation.d.ts +68 -0
- package/chips/chipset/lib/foundation.js +316 -0
- package/chips/chipset/lib/foundation.js.map +1 -0
- package/chips/chipset/lib/types.d.ts +41 -0
- package/chips/chipset/lib/types.js +7 -0
- package/chips/chipset/lib/types.js.map +1 -0
- package/compat/animation/animationframe.d.ts +31 -0
- package/compat/animation/animationframe.js +65 -0
- package/compat/animation/animationframe.js.map +1 -0
- package/compat/base/aria-property.d.ts +39 -0
- package/compat/base/aria-property.js +93 -0
- package/compat/base/aria-property.js.map +1 -0
- package/compat/base/foundation.d.ts +44 -0
- package/compat/base/foundation.js +45 -0
- package/compat/base/foundation.js.map +1 -0
- package/compat/base/observer.d.ts +16 -0
- package/compat/base/observer.js +43 -0
- package/compat/base/observer.js.map +1 -0
- package/compat/base/utils.d.ts +7 -0
- package/compat/base/utils.js +39 -0
- package/compat/base/utils.js.map +1 -0
- package/compat/density/_density.scss +106 -0
- package/compat/dom/keyboard.d.ts +33 -0
- package/compat/dom/keyboard.js +109 -0
- package/compat/dom/keyboard.js.map +1 -0
- package/compat/theme/_color-palette.scss +277 -0
- package/compat/theme/_css.scss +92 -0
- package/compat/theme/_custom-properties.scss +309 -0
- package/compat/theme/_gss.scss +45 -0
- package/compat/theme/_keys.scss +507 -0
- package/compat/theme/_map-ext.scss +68 -0
- package/compat/theme/_replace.scss +108 -0
- package/compat/theme/_selector-ext.scss +522 -0
- package/compat/theme/_shadow-dom.scss +474 -0
- package/compat/theme/_state.scss +752 -0
- package/compat/theme/_theme-color.scss +344 -0
- package/compat/theme/_theme.scss +334 -0
- package/compat/touchtarget/_touch-target.scss +56 -0
- package/controller/action-controller.d.ts +147 -0
- package/controller/action-controller.js +286 -0
- package/controller/action-controller.js.map +1 -0
- package/controller/events.d.ts +27 -0
- package/controller/events.js +40 -0
- package/controller/events.js.map +1 -0
- package/controller/form-controller.d.ts +59 -0
- package/controller/form-controller.js +68 -0
- package/controller/form-controller.js.map +1 -0
- package/controller/foundation.d.ts +24 -0
- package/controller/foundation.js +18 -0
- package/controller/foundation.js.map +1 -0
- package/controller/observer-foundation.d.ts +25 -0
- package/controller/observer-foundation.js +37 -0
- package/controller/observer-foundation.js.map +1 -0
- package/controller/observer.d.ts +52 -0
- package/controller/observer.js +149 -0
- package/controller/observer.js.map +1 -0
- package/controller/string-converter.d.ts +9 -0
- package/controller/string-converter.js +14 -0
- package/controller/string-converter.js.map +1 -0
- package/decorators/aria-property.d.ts +32 -0
- package/decorators/aria-property.js +99 -0
- package/decorators/aria-property.js.map +1 -0
- package/decorators/bound.d.ts +40 -0
- package/decorators/bound.js +49 -0
- package/decorators/bound.js.map +1 -0
- package/elevation/lib/_elevation-overlay-theme.scss +31 -0
- package/elevation/lib/_elevation-overlay.scss +18 -0
- package/elevation/lib/_elevation-theme.scss +88 -0
- package/elevation/lib/_surface.scss +18 -0
- package/elevation/lib/elevation-overlay-styles.css.d.ts +1 -0
- package/elevation/lib/elevation-overlay-styles.css.js +9 -0
- package/elevation/lib/elevation-overlay-styles.css.js.map +1 -0
- package/elevation/lib/elevation-overlay-styles.scss +9 -0
- package/fab/_fab-extended.scss +11 -0
- package/fab/_fab.scss +20 -0
- package/fab/fab-extended.d.ts +23 -0
- package/fab/fab-extended.js +30 -0
- package/fab/fab-extended.js.map +1 -0
- package/fab/fab.d.ts +23 -0
- package/fab/fab.js +30 -0
- package/fab/fab.js.map +1 -0
- package/fab/harness.d.ts +14 -0
- package/fab/harness.js +16 -0
- package/fab/harness.js.map +1 -0
- package/fab/lib/_fab-extended-theme.scss +108 -0
- package/fab/lib/_fab-extended.scss +39 -0
- package/fab/lib/_fab-shared-theme.scss +202 -0
- package/fab/lib/_fab-shared.scss +114 -0
- package/fab/lib/_fab-theme.scss +107 -0
- package/fab/lib/_fab.scss +17 -0
- package/fab/lib/fab-extended-styles.css.d.ts +1 -0
- package/fab/lib/fab-extended-styles.css.js +9 -0
- package/fab/lib/fab-extended-styles.css.js.map +1 -0
- package/fab/lib/fab-extended-styles.scss +16 -0
- package/fab/lib/fab-extended.d.ts +19 -0
- package/fab/lib/fab-extended.js +28 -0
- package/fab/lib/fab-extended.js.map +1 -0
- package/fab/lib/fab-shared-styles.css.d.ts +1 -0
- package/fab/lib/fab-shared-styles.css.js +9 -0
- package/fab/lib/fab-shared-styles.css.js.map +1 -0
- package/fab/lib/fab-shared-styles.scss +8 -0
- package/fab/lib/fab-shared.d.ts +50 -0
- package/fab/lib/fab-shared.js +138 -0
- package/fab/lib/fab-shared.js.map +1 -0
- package/fab/lib/fab-styles.css.d.ts +1 -0
- package/fab/lib/fab-styles.css.js +9 -0
- package/fab/lib/fab-styles.css.js.map +1 -0
- package/fab/lib/fab-styles.scss +16 -0
- package/fab/lib/fab.d.ts +17 -0
- package/fab/lib/fab.js +23 -0
- package/fab/lib/fab.js.map +1 -0
- package/field/_filled-field.scss +8 -0
- package/field/_outlined-field.scss +8 -0
- package/field/filled-field.d.ts +19 -0
- package/field/filled-field.js +23 -0
- package/field/filled-field.js.map +1 -0
- package/field/harness.d.ts +16 -0
- package/field/harness.js +29 -0
- package/field/harness.js.map +1 -0
- package/field/lib/_content-theme.scss +80 -0
- package/field/lib/_content.scss +63 -0
- package/field/lib/_field-theme.scss +15 -0
- package/field/lib/_field.scss +52 -0
- package/field/lib/_filled-field-theme.scss +382 -0
- package/field/lib/_filled-field.scss +129 -0
- package/field/lib/_label-theme.scss +123 -0
- package/field/lib/_label.scss +49 -0
- package/field/lib/_outlined-field-theme.scss +311 -0
- package/field/lib/_outlined-field.scss +194 -0
- package/field/lib/_supporting-text-theme.scss +107 -0
- package/field/lib/_supporting-text.scss +20 -0
- package/field/lib/field.d.ts +56 -0
- package/field/lib/field.js +253 -0
- package/field/lib/field.js.map +1 -0
- package/field/lib/filled-field.d.ts +23 -0
- package/field/lib/filled-field.js +83 -0
- package/field/lib/filled-field.js.map +1 -0
- package/field/lib/filled-styles.css.d.ts +1 -0
- package/field/lib/filled-styles.css.js +9 -0
- package/field/lib/filled-styles.css.js.map +1 -0
- package/field/lib/filled-styles.scss +16 -0
- package/field/lib/outlined-field.d.ts +19 -0
- package/field/lib/outlined-field.js +46 -0
- package/field/lib/outlined-field.js.map +1 -0
- package/field/lib/outlined-styles.css.d.ts +1 -0
- package/field/lib/outlined-styles.css.js +9 -0
- package/field/lib/outlined-styles.css.js.map +1 -0
- package/field/lib/outlined-styles.scss +16 -0
- package/field/lib/shared-styles.css.d.ts +1 -0
- package/field/lib/shared-styles.css.js +9 -0
- package/field/lib/shared-styles.css.js.map +1 -0
- package/field/lib/shared-styles.scss +14 -0
- package/field/outlined-field.d.ts +19 -0
- package/field/outlined-field.js +23 -0
- package/field/outlined-field.js.map +1 -0
- package/focus/focus-ring.d.ts +19 -0
- package/focus/focus-ring.js +22 -0
- package/focus/focus-ring.js.map +1 -0
- package/focus/lib/_focus-ring-theme.scss +89 -0
- package/focus/lib/_focus-ring.scss +41 -0
- package/focus/lib/focus-ring-styles.css.d.ts +1 -0
- package/focus/lib/focus-ring-styles.css.js +9 -0
- package/focus/lib/focus-ring-styles.css.js.map +1 -0
- package/focus/lib/focus-ring-styles.scss +16 -0
- package/focus/lib/focus-ring.d.ts +15 -0
- package/focus/lib/focus-ring.js +31 -0
- package/focus/lib/focus-ring.js.map +1 -0
- package/focus/strong-focus.d.ts +43 -0
- package/focus/strong-focus.js +84 -0
- package/focus/strong-focus.js.map +1 -0
- package/formfield/formfield.d.ts +19 -0
- package/formfield/formfield.js +22 -0
- package/formfield/formfield.js.map +1 -0
- package/formfield/lib/_formfield-theme.scss +41 -0
- package/formfield/lib/_formfield.scss +40 -0
- package/formfield/lib/formfield-styles.css.d.ts +1 -0
- package/formfield/lib/formfield-styles.css.js +9 -0
- package/formfield/lib/formfield-styles.css.js.map +1 -0
- package/formfield/lib/formfield-styles.scss +16 -0
- package/formfield/lib/formfield.d.ts +22 -0
- package/formfield/lib/formfield.js +73 -0
- package/formfield/lib/formfield.js.map +1 -0
- package/icon/icon.d.ts +19 -0
- package/icon/icon.js +22 -0
- package/icon/icon.js.map +1 -0
- package/icon/lib/icon-styles.css.d.ts +1 -0
- package/icon/lib/icon-styles.css.js +9 -0
- package/icon/lib/icon-styles.css.js.map +1 -0
- package/icon/lib/icon-styles.scss +25 -0
- package/icon/lib/icon.d.ts +11 -0
- package/icon/lib/icon.js +14 -0
- package/icon/lib/icon.js.map +1 -0
- package/iconbutton/_filled-icon-button.scss +7 -0
- package/iconbutton/_outlined-icon-button.scss +7 -0
- package/iconbutton/_standard-icon-button.scss +7 -0
- package/iconbutton/filled-icon-button-toggle.d.ts +19 -0
- package/iconbutton/filled-icon-button-toggle.js +28 -0
- package/iconbutton/filled-icon-button-toggle.js.map +1 -0
- package/iconbutton/filled-icon-button.d.ts +19 -0
- package/iconbutton/filled-icon-button.js +27 -0
- package/iconbutton/filled-icon-button.js.map +1 -0
- package/iconbutton/filled-link-icon-button.d.ts +19 -0
- package/iconbutton/filled-link-icon-button.js +27 -0
- package/iconbutton/filled-link-icon-button.js.map +1 -0
- package/iconbutton/filled-tonal-icon-button-toggle.d.ts +19 -0
- package/iconbutton/filled-tonal-icon-button-toggle.js +28 -0
- package/iconbutton/filled-tonal-icon-button-toggle.js.map +1 -0
- package/iconbutton/filled-tonal-icon-button.d.ts +19 -0
- package/iconbutton/filled-tonal-icon-button.js +27 -0
- package/iconbutton/filled-tonal-icon-button.js.map +1 -0
- package/iconbutton/filled-tonal-link-icon-button.d.ts +19 -0
- package/iconbutton/filled-tonal-link-icon-button.js +27 -0
- package/iconbutton/filled-tonal-link-icon-button.js.map +1 -0
- package/iconbutton/harness.d.ts +14 -0
- package/iconbutton/harness.js +16 -0
- package/iconbutton/harness.js.map +1 -0
- package/iconbutton/lib/_filled-icon-button-theme.scss +138 -0
- package/iconbutton/lib/_filled-icon-button.scss +8 -0
- package/iconbutton/lib/_filled-tonal-icon-button-theme.scss +144 -0
- package/iconbutton/lib/_filled-tonal-icon-button.scss +8 -0
- package/iconbutton/lib/_icon-button-theme.scss +163 -0
- package/iconbutton/lib/_icon-button.scss +91 -0
- package/iconbutton/lib/_outlined-icon-button-theme.scss +187 -0
- package/iconbutton/lib/_outlined-icon-button.scss +30 -0
- package/iconbutton/lib/_standard-icon-button-theme.scss +107 -0
- package/iconbutton/lib/_standard-icon-button.scss +13 -0
- package/iconbutton/lib/filled-styles.css.d.ts +1 -0
- package/iconbutton/lib/filled-styles.css.js +9 -0
- package/iconbutton/lib/filled-styles.css.js.map +1 -0
- package/iconbutton/lib/filled-styles.scss +18 -0
- package/iconbutton/lib/filled-tonal-styles.css.d.ts +1 -0
- package/iconbutton/lib/filled-tonal-styles.css.js +9 -0
- package/iconbutton/lib/filled-tonal-styles.css.js.map +1 -0
- package/iconbutton/lib/filled-tonal-styles.scss +18 -0
- package/iconbutton/lib/icon-button-styles.css.d.ts +1 -0
- package/iconbutton/lib/icon-button-styles.css.js +9 -0
- package/iconbutton/lib/icon-button-styles.css.js.map +1 -0
- package/iconbutton/lib/icon-button-styles.scss +8 -0
- package/iconbutton/lib/icon-button-toggle.d.ts +44 -0
- package/iconbutton/lib/icon-button-toggle.js +155 -0
- package/iconbutton/lib/icon-button-toggle.js.map +1 -0
- package/iconbutton/lib/icon-button.d.ts +50 -0
- package/iconbutton/lib/icon-button.js +154 -0
- package/iconbutton/lib/icon-button.js.map +1 -0
- package/iconbutton/lib/link-icon-button.d.ts +14 -0
- package/iconbutton/lib/link-icon-button.js +53 -0
- package/iconbutton/lib/link-icon-button.js.map +1 -0
- package/iconbutton/lib/outlined-styles.css.d.ts +1 -0
- package/iconbutton/lib/outlined-styles.css.js +9 -0
- package/iconbutton/lib/outlined-styles.css.js.map +1 -0
- package/iconbutton/lib/outlined-styles.scss +18 -0
- package/iconbutton/lib/standard-styles.css.d.ts +1 -0
- package/iconbutton/lib/standard-styles.css.js +9 -0
- package/iconbutton/lib/standard-styles.css.js.map +1 -0
- package/iconbutton/lib/standard-styles.scss +18 -0
- package/iconbutton/outlined-icon-button-toggle.d.ts +19 -0
- package/iconbutton/outlined-icon-button-toggle.js +27 -0
- package/iconbutton/outlined-icon-button-toggle.js.map +1 -0
- package/iconbutton/outlined-icon-button.d.ts +19 -0
- package/iconbutton/outlined-icon-button.js +27 -0
- package/iconbutton/outlined-icon-button.js.map +1 -0
- package/iconbutton/outlined-link-icon-button.d.ts +19 -0
- package/iconbutton/outlined-link-icon-button.js +27 -0
- package/iconbutton/outlined-link-icon-button.js.map +1 -0
- package/iconbutton/standard-icon-button-toggle.d.ts +19 -0
- package/iconbutton/standard-icon-button-toggle.js +27 -0
- package/iconbutton/standard-icon-button-toggle.js.map +1 -0
- package/iconbutton/standard-icon-button.d.ts +19 -0
- package/iconbutton/standard-icon-button.js +27 -0
- package/iconbutton/standard-icon-button.js.map +1 -0
- package/iconbutton/standard-link-icon-button.d.ts +19 -0
- package/iconbutton/standard-link-icon-button.js +27 -0
- package/iconbutton/standard-link-icon-button.js.map +1 -0
- package/list/_list-item.scss +7 -0
- package/list/_list.scss +7 -0
- package/list/harness.d.ts +19 -0
- package/list/harness.js +24 -0
- package/list/harness.js.map +1 -0
- package/list/lib/_list-theme.scss +51 -0
- package/list/lib/_list.scss +41 -0
- package/list/lib/_tokens.scss +80 -0
- package/list/lib/avatar/_list-item-avatar-theme.scss +30 -0
- package/list/lib/avatar/_list-item-avatar.scss +14 -0
- package/list/lib/avatar/list-item-avatar-styles.css.d.ts +1 -0
- package/list/lib/avatar/list-item-avatar-styles.css.js +9 -0
- package/list/lib/avatar/list-item-avatar-styles.css.js.map +1 -0
- package/list/lib/avatar/list-item-avatar-styles.scss +20 -0
- package/list/lib/avatar/list-item-avatar.d.ts +16 -0
- package/list/lib/avatar/list-item-avatar.js +35 -0
- package/list/lib/avatar/list-item-avatar.js.map +1 -0
- package/list/lib/divider/_list-divider-theme.scss +30 -0
- package/list/lib/divider/_list-divider.scss +14 -0
- package/list/lib/divider/list-divider-styles.css.d.ts +1 -0
- package/list/lib/divider/list-divider-styles.css.js +9 -0
- package/list/lib/divider/list-divider-styles.css.js.map +1 -0
- package/list/lib/divider/list-divider-styles.scss +18 -0
- package/list/lib/divider/list-divider.d.ts +13 -0
- package/list/lib/divider/list-divider.js +30 -0
- package/list/lib/divider/list-divider.js.map +1 -0
- package/list/lib/icon/_list-item-icon-theme.scss +32 -0
- package/list/lib/icon/_list-item-icon.scss +35 -0
- package/list/lib/icon/list-item-icon-styles.css.d.ts +1 -0
- package/list/lib/icon/list-item-icon-styles.css.js +9 -0
- package/list/lib/icon/list-item-icon-styles.css.js.map +1 -0
- package/list/lib/icon/list-item-icon-styles.scss +20 -0
- package/list/lib/icon/list-item-icon.d.ts +12 -0
- package/list/lib/icon/list-item-icon.js +26 -0
- package/list/lib/icon/list-item-icon.js.map +1 -0
- package/list/lib/image/_list-item-image-theme.scss +36 -0
- package/list/lib/image/_list-item-image.scss +16 -0
- package/list/lib/image/list-item-image-styles.css.d.ts +1 -0
- package/list/lib/image/list-item-image-styles.css.js +9 -0
- package/list/lib/image/list-item-image-styles.css.js.map +1 -0
- package/list/lib/image/list-item-image-styles.scss +20 -0
- package/list/lib/image/list-item-image.d.ts +14 -0
- package/list/lib/image/list-item-image.js +37 -0
- package/list/lib/image/list-item-image.js.map +1 -0
- package/list/lib/list-styles.css.d.ts +1 -0
- package/list/lib/list-styles.css.js +9 -0
- package/list/lib/list-styles.css.js.map +1 -0
- package/list/lib/list-styles.scss +16 -0
- package/list/lib/list.d.ts +41 -0
- package/list/lib/list.js +168 -0
- package/list/lib/list.js.map +1 -0
- package/list/lib/listitem/_list-item-theme.scss +337 -0
- package/list/lib/listitem/_list-item.scss +133 -0
- package/list/lib/listitem/harness.d.ts +13 -0
- package/list/lib/listitem/harness.js +16 -0
- package/list/lib/listitem/harness.js.map +1 -0
- package/list/lib/listitem/list-item-styles.css.d.ts +1 -0
- package/list/lib/listitem/list-item-styles.css.js +9 -0
- package/list/lib/listitem/list-item-styles.css.js.map +1 -0
- package/list/lib/listitem/list-item-styles.scss +16 -0
- package/list/lib/listitem/list-item.d.ts +73 -0
- package/list/lib/listitem/list-item.js +258 -0
- package/list/lib/listitem/list-item.js.map +1 -0
- package/list/lib/video/_list-item-video-theme.scss +36 -0
- package/list/lib/video/_list-item-video.scss +18 -0
- package/list/lib/video/list-item-video-styles.css.d.ts +1 -0
- package/list/lib/video/list-item-video-styles.css.js +9 -0
- package/list/lib/video/list-item-video-styles.css.js.map +1 -0
- package/list/lib/video/list-item-video-styles.scss +20 -0
- package/list/lib/video/list-item-video.d.ts +14 -0
- package/list/lib/video/list-item-video.js +37 -0
- package/list/lib/video/list-item-video.js.map +1 -0
- package/list/list-divider.d.ts +19 -0
- package/list/list-divider.js +22 -0
- package/list/list-divider.js.map +1 -0
- package/list/list-item-avatar.d.ts +19 -0
- package/list/list-item-avatar.js +22 -0
- package/list/list-item-avatar.js.map +1 -0
- package/list/list-item-icon.d.ts +19 -0
- package/list/list-item-icon.js +22 -0
- package/list/list-item-icon.js.map +1 -0
- package/list/list-item-image.d.ts +19 -0
- package/list/list-item-image.js +22 -0
- package/list/list-item-image.js.map +1 -0
- package/list/list-item-video.d.ts +19 -0
- package/list/list-item-video.js +22 -0
- package/list/list-item-video.js.map +1 -0
- package/list/list-item.d.ts +19 -0
- package/list/list-item.js +22 -0
- package/list/list-item.js.map +1 -0
- package/list/list.d.ts +19 -0
- package/list/list.js +22 -0
- package/list/list.js.map +1 -0
- package/menu/harness.d.ts +15 -0
- package/menu/harness.js +17 -0
- package/menu/harness.js.map +1 -0
- package/menu/lib/_menu-button.scss +14 -0
- package/menu/lib/_menu-theme.scss +118 -0
- package/menu/lib/_menu.scss +8 -0
- package/menu/lib/adapter.d.ts +66 -0
- package/menu/lib/adapter.js +7 -0
- package/menu/lib/adapter.js.map +1 -0
- package/menu/lib/constants.d.ts +22 -0
- package/menu/lib/constants.js +23 -0
- package/menu/lib/constants.js.map +1 -0
- package/menu/lib/foundation.d.ts +49 -0
- package/menu/lib/foundation.js +123 -0
- package/menu/lib/foundation.js.map +1 -0
- package/menu/lib/menu-button-styles.css.d.ts +1 -0
- package/menu/lib/menu-button-styles.css.js +9 -0
- package/menu/lib/menu-button-styles.css.js.map +1 -0
- package/menu/lib/menu-button-styles.scss +9 -0
- package/menu/lib/menu-button.d.ts +27 -0
- package/menu/lib/menu-button.js +93 -0
- package/menu/lib/menu-button.js.map +1 -0
- package/menu/lib/menu-styles.css.d.ts +1 -0
- package/menu/lib/menu-styles.css.js +9 -0
- package/menu/lib/menu-styles.css.js.map +1 -0
- package/menu/lib/menu-styles.scss +17 -0
- package/menu/lib/menu.d.ts +62 -0
- package/menu/lib/menu.js +334 -0
- package/menu/lib/menu.js.map +1 -0
- package/menu/lib/menuitem/harness.d.ts +11 -0
- package/menu/lib/menuitem/harness.js +12 -0
- package/menu/lib/menuitem/harness.js.map +1 -0
- package/menu/lib/menuitem/menu-item.d.ts +11 -0
- package/menu/lib/menuitem/menu-item.js +14 -0
- package/menu/lib/menuitem/menu-item.js.map +1 -0
- package/menu/lib/types.d.ts +23 -0
- package/menu/lib/types.js +7 -0
- package/menu/lib/types.js.map +1 -0
- package/menu/menu-button.d.ts +14 -0
- package/menu/menu-button.js +17 -0
- package/menu/menu-button.js.map +1 -0
- package/menu/menu-item.d.ts +14 -0
- package/menu/menu-item.js +17 -0
- package/menu/menu-item.js.map +1 -0
- package/menu/menu.d.ts +14 -0
- package/menu/menu.js +17 -0
- package/menu/menu.js.map +1 -0
- package/menusurface/_menu-surface.scss +7 -0
- package/menusurface/lib/_menu-surface-theme.scss +58 -0
- package/menusurface/lib/_menu-surface.scss +85 -0
- package/menusurface/lib/adapter.d.ts +46 -0
- package/menusurface/lib/adapter.js +7 -0
- package/menusurface/lib/adapter.js.map +1 -0
- package/menusurface/lib/constants.d.ts +71 -0
- package/menusurface/lib/constants.js +83 -0
- package/menusurface/lib/constants.js.map +1 -0
- package/menusurface/lib/foundation.d.ts +176 -0
- package/menusurface/lib/foundation.js +544 -0
- package/menusurface/lib/foundation.js.map +1 -0
- package/menusurface/lib/menu-surface-styles.css.d.ts +1 -0
- package/menusurface/lib/menu-surface-styles.css.js +9 -0
- package/menusurface/lib/menu-surface-styles.css.js.map +1 -0
- package/menusurface/lib/menu-surface-styles.scss +16 -0
- package/menusurface/lib/menu-surface.d.ts +58 -0
- package/menusurface/lib/menu-surface.js +386 -0
- package/menusurface/lib/menu-surface.js.map +1 -0
- package/menusurface/lib/types.d.ts +19 -0
- package/menusurface/lib/types.js +7 -0
- package/menusurface/lib/types.js.map +1 -0
- package/menusurface/menu-surface.d.ts +14 -0
- package/menusurface/menu-surface.js +17 -0
- package/menusurface/menu-surface.js.map +1 -0
- package/motion/_animation.scss +33 -0
- package/motion/animation.d.ts +63 -0
- package/motion/animation.js +66 -0
- package/motion/animation.js.map +1 -0
- package/navigationbar/_navigation-bar.scss +7 -0
- package/navigationbar/harness.d.ts +19 -0
- package/navigationbar/harness.js +29 -0
- package/navigationbar/harness.js.map +1 -0
- package/navigationbar/lib/_navigation-bar-theme.scss +87 -0
- package/navigationbar/lib/_navigation-bar.scss +28 -0
- package/navigationbar/lib/constants.d.ts +17 -0
- package/navigationbar/lib/constants.js +7 -0
- package/navigationbar/lib/constants.js.map +1 -0
- package/navigationbar/lib/navigation-bar-styles.css.d.ts +1 -0
- package/navigationbar/lib/navigation-bar-styles.css.js +9 -0
- package/navigationbar/lib/navigation-bar-styles.css.js.map +1 -0
- package/navigationbar/lib/navigation-bar-styles.scss +20 -0
- package/navigationbar/lib/navigation-bar.d.ts +26 -0
- package/navigationbar/lib/navigation-bar.js +150 -0
- package/navigationbar/lib/navigation-bar.js.map +1 -0
- package/navigationbar/lib/state.d.ts +23 -0
- package/navigationbar/lib/state.js +7 -0
- package/navigationbar/lib/state.js.map +1 -0
- package/navigationbar/navigation-bar.d.ts +19 -0
- package/navigationbar/navigation-bar.js +22 -0
- package/navigationbar/navigation-bar.js.map +1 -0
- package/navigationdrawer/_navigation-drawer-modal.scss +6 -0
- package/navigationdrawer/_navigation-drawer.scss +6 -0
- package/navigationdrawer/lib/_navigation-drawer-modal-theme.scss +138 -0
- package/navigationdrawer/lib/_navigation-drawer-modal.scss +78 -0
- package/navigationdrawer/lib/_navigation-drawer-theme.scss +113 -0
- package/navigationdrawer/lib/_navigation-drawer.scss +64 -0
- package/navigationdrawer/lib/navigation-drawer-modal-styles.css.d.ts +1 -0
- package/navigationdrawer/lib/navigation-drawer-modal-styles.css.js +9 -0
- package/navigationdrawer/lib/navigation-drawer-modal-styles.css.js.map +1 -0
- package/navigationdrawer/lib/navigation-drawer-modal-styles.scss +12 -0
- package/navigationdrawer/lib/navigation-drawer-modal.d.ts +24 -0
- package/navigationdrawer/lib/navigation-drawer-modal.js +106 -0
- package/navigationdrawer/lib/navigation-drawer-modal.js.map +1 -0
- package/navigationdrawer/lib/navigation-drawer-styles.css.d.ts +1 -0
- package/navigationdrawer/lib/navigation-drawer-styles.css.js +9 -0
- package/navigationdrawer/lib/navigation-drawer-styles.css.js.map +1 -0
- package/navigationdrawer/lib/navigation-drawer-styles.scss +18 -0
- package/navigationdrawer/lib/navigation-drawer.d.ts +20 -0
- package/navigationdrawer/lib/navigation-drawer.js +87 -0
- package/navigationdrawer/lib/navigation-drawer.js.map +1 -0
- package/navigationdrawer/navigation-drawer-modal.d.ts +19 -0
- package/navigationdrawer/navigation-drawer-modal.js +22 -0
- package/navigationdrawer/navigation-drawer-modal.js.map +1 -0
- package/navigationdrawer/navigation-drawer.d.ts +19 -0
- package/navigationdrawer/navigation-drawer.js +22 -0
- package/navigationdrawer/navigation-drawer.js.map +1 -0
- package/navigationtab/_navigation-tab.scss +7 -0
- package/navigationtab/harness.d.ts +13 -0
- package/navigationtab/harness.js +16 -0
- package/navigationtab/harness.js.map +1 -0
- package/navigationtab/lib/_navigation-tab-theme.scss +343 -0
- package/navigationtab/lib/_navigation-tab.scss +127 -0
- package/navigationtab/lib/navigation-tab-styles.css.d.ts +1 -0
- package/navigationtab/lib/navigation-tab-styles.css.js +9 -0
- package/navigationtab/lib/navigation-tab-styles.css.js.map +1 -0
- package/navigationtab/lib/navigation-tab-styles.scss +21 -0
- package/navigationtab/lib/navigation-tab.d.ts +48 -0
- package/navigationtab/lib/navigation-tab.js +174 -0
- package/navigationtab/lib/navigation-tab.js.map +1 -0
- package/navigationtab/lib/state.d.ts +24 -0
- package/navigationtab/lib/state.js +7 -0
- package/navigationtab/lib/state.js.map +1 -0
- package/navigationtab/navigation-tab.d.ts +19 -0
- package/navigationtab/navigation-tab.js +22 -0
- package/navigationtab/navigation-tab.js.map +1 -0
- package/package.json +48 -0
- package/radio/_radio.scss +1 -0
- package/radio/harness.d.ts +13 -0
- package/radio/harness.js +16 -0
- package/radio/harness.js.map +1 -0
- package/radio/lib/_radio-theme.scss +376 -0
- package/radio/lib/_radio.scss +131 -0
- package/radio/lib/radio-styles.css.d.ts +1 -0
- package/radio/lib/radio-styles.css.js +9 -0
- package/radio/lib/radio-styles.css.js.map +1 -0
- package/radio/lib/radio-styles.scss +14 -0
- package/radio/lib/radio.d.ts +93 -0
- package/radio/lib/radio.js +302 -0
- package/radio/lib/radio.js.map +1 -0
- package/radio/lib/single-selection-controller.d.ts +167 -0
- package/radio/lib/single-selection-controller.js +289 -0
- package/radio/lib/single-selection-controller.js.map +1 -0
- package/radio/radio.d.ts +15 -0
- package/radio/radio.js +18 -0
- package/radio/radio.js.map +1 -0
- package/ripple/_index.scss +6 -0
- package/ripple/_ripple-theme.scss +6 -0
- package/ripple/lib/_ripple-theme.scss +98 -0
- package/ripple/lib/_ripple.scss +84 -0
- package/ripple/lib/ripple-styles.css.d.ts +1 -0
- package/ripple/lib/ripple-styles.css.js +9 -0
- package/ripple/lib/ripple-styles.css.js.map +1 -0
- package/ripple/lib/ripple-styles.scss +16 -0
- package/ripple/lib/ripple.d.ts +62 -0
- package/ripple/lib/ripple.js +215 -0
- package/ripple/lib/ripple.js.map +1 -0
- package/ripple/ripple.d.ts +19 -0
- package/ripple/ripple.js +22 -0
- package/ripple/ripple.js.map +1 -0
- package/sass/_assert.scss +16 -0
- package/sass/_color.scss +186 -0
- package/sass/_dom.scss +52 -0
- package/sass/_elevation.scss +155 -0
- package/sass/_feature-flags.scss +117 -0
- package/sass/_map-ext.scss +25 -0
- package/sass/_resolvers.scss +16 -0
- package/sass/_shape.scss +106 -0
- package/sass/_string-ext.scss +128 -0
- package/sass/_theme.scss +245 -0
- package/sass/_touch-target.scss +22 -0
- package/sass/_typography.scss +114 -0
- package/sass/_var.scss +241 -0
- package/segmentedbutton/lib/_outlined-segmented-button-theme.scss +167 -0
- package/segmentedbutton/lib/_outlined-segmented-button.scss +18 -0
- package/segmentedbutton/lib/_segmented-button-theme.scss +316 -0
- package/segmentedbutton/lib/_segmented-button.scss +159 -0
- package/segmentedbutton/lib/outlined-segmented-button.d.ts +15 -0
- package/segmentedbutton/lib/outlined-segmented-button.js +22 -0
- package/segmentedbutton/lib/outlined-segmented-button.js.map +1 -0
- package/segmentedbutton/lib/outlined-styles.css.d.ts +1 -0
- package/segmentedbutton/lib/outlined-styles.css.js +9 -0
- package/segmentedbutton/lib/outlined-styles.css.js.map +1 -0
- package/segmentedbutton/lib/outlined-styles.scss +17 -0
- package/segmentedbutton/lib/segmented-button-styles.css.d.ts +1 -0
- package/segmentedbutton/lib/segmented-button-styles.css.js +9 -0
- package/segmentedbutton/lib/segmented-button-styles.css.js.map +1 -0
- package/segmentedbutton/lib/segmented-button-styles.scss +8 -0
- package/segmentedbutton/lib/segmented-button.d.ts +60 -0
- package/segmentedbutton/lib/segmented-button.js +229 -0
- package/segmentedbutton/lib/segmented-button.js.map +1 -0
- package/segmentedbutton/outlined-segmented-button.d.ts +21 -0
- package/segmentedbutton/outlined-segmented-button.js +25 -0
- package/segmentedbutton/outlined-segmented-button.js.map +1 -0
- package/segmentedbuttonset/lib/_outlined-segmented-button-set-theme.scss +53 -0
- package/segmentedbuttonset/lib/_outlined-segmented-button-set.scss +12 -0
- package/segmentedbuttonset/lib/_segmented-button-set-theme.scss +41 -0
- package/segmentedbuttonset/lib/_segmented-button-set.scss +21 -0
- package/segmentedbuttonset/lib/outlined-segmented-button-set.d.ts +12 -0
- package/segmentedbuttonset/lib/outlined-segmented-button-set.js +17 -0
- package/segmentedbuttonset/lib/outlined-segmented-button-set.js.map +1 -0
- package/segmentedbuttonset/lib/outlined-styles.css.d.ts +1 -0
- package/segmentedbuttonset/lib/outlined-styles.css.js +9 -0
- package/segmentedbuttonset/lib/outlined-styles.css.js.map +1 -0
- package/segmentedbuttonset/lib/outlined-styles.scss +17 -0
- package/segmentedbuttonset/lib/segmented-button-set.d.ts +34 -0
- package/segmentedbuttonset/lib/segmented-button-set.js +118 -0
- package/segmentedbuttonset/lib/segmented-button-set.js.map +1 -0
- package/segmentedbuttonset/lib/shared-styles.css.d.ts +1 -0
- package/segmentedbuttonset/lib/shared-styles.css.js +9 -0
- package/segmentedbuttonset/lib/shared-styles.css.js.map +1 -0
- package/segmentedbuttonset/lib/shared-styles.scss +8 -0
- package/segmentedbuttonset/outlined-segmented-button-set.d.ts +21 -0
- package/segmentedbuttonset/outlined-segmented-button-set.js +25 -0
- package/segmentedbuttonset/outlined-segmented-button-set.js.map +1 -0
- package/switch/_switch.scss +7 -0
- package/switch/harness.d.ts +13 -0
- package/switch/harness.js +16 -0
- package/switch/harness.js.map +1 -0
- package/switch/lib/_switch-handle-theme.scss +137 -0
- package/switch/lib/_switch-icon-theme.scss +52 -0
- package/switch/lib/_switch-theme.scss +232 -0
- package/switch/lib/_switch-track-theme.scss +117 -0
- package/switch/lib/_switch.scss +210 -0
- package/switch/lib/switch-styles.css.d.ts +1 -0
- package/switch/lib/switch-styles.css.js +9 -0
- package/switch/lib/switch-styles.css.js.map +1 -0
- package/switch/lib/switch-styles.scss +11 -0
- package/switch/lib/switch.d.ts +59 -0
- package/switch/lib/switch.js +223 -0
- package/switch/lib/switch.js.map +1 -0
- package/switch/switch.d.ts +19 -0
- package/switch/switch.js +22 -0
- package/switch/switch.js.map +1 -0
- package/textfield/_filled-text-field.scss +9 -0
- package/textfield/_outlined-text-field.scss +9 -0
- package/textfield/filled-text-field.d.ts +21 -0
- package/textfield/filled-text-field.js +31 -0
- package/textfield/filled-text-field.js.map +1 -0
- package/textfield/harness.d.ts +51 -0
- package/textfield/harness.js +118 -0
- package/textfield/harness.js.map +1 -0
- package/textfield/lib/_filled-text-field-theme.scss +203 -0
- package/textfield/lib/_icon-theme.scss +100 -0
- package/textfield/lib/_icon.scss +18 -0
- package/textfield/lib/_input-theme.scss +91 -0
- package/textfield/lib/_input.scss +38 -0
- package/textfield/lib/_outlined-text-field-theme.scss +186 -0
- package/textfield/lib/_text-field.scss +28 -0
- package/textfield/lib/filled-forced-colors-styles.css.d.ts +1 -0
- package/textfield/lib/filled-forced-colors-styles.css.js +9 -0
- package/textfield/lib/filled-forced-colors-styles.css.js.map +1 -0
- package/textfield/lib/filled-forced-colors-styles.scss +17 -0
- package/textfield/lib/filled-styles.css.d.ts +1 -0
- package/textfield/lib/filled-styles.css.js +9 -0
- package/textfield/lib/filled-styles.css.js.map +1 -0
- package/textfield/lib/filled-styles.scss +15 -0
- package/textfield/lib/filled-text-field.d.ts +12 -0
- package/textfield/lib/filled-text-field.js +17 -0
- package/textfield/lib/filled-text-field.js.map +1 -0
- package/textfield/lib/outlined-forced-colors-styles.css.d.ts +1 -0
- package/textfield/lib/outlined-forced-colors-styles.css.js +9 -0
- package/textfield/lib/outlined-forced-colors-styles.css.js.map +1 -0
- package/textfield/lib/outlined-forced-colors-styles.scss +17 -0
- package/textfield/lib/outlined-styles.css.d.ts +1 -0
- package/textfield/lib/outlined-styles.css.js +9 -0
- package/textfield/lib/outlined-styles.css.js.map +1 -0
- package/textfield/lib/outlined-styles.scss +15 -0
- package/textfield/lib/outlined-text-field.d.ts +12 -0
- package/textfield/lib/outlined-text-field.js +17 -0
- package/textfield/lib/outlined-text-field.js.map +1 -0
- package/textfield/lib/shared-styles.css.d.ts +1 -0
- package/textfield/lib/shared-styles.css.js +9 -0
- package/textfield/lib/shared-styles.css.js.map +1 -0
- package/textfield/lib/shared-styles.scss +12 -0
- package/textfield/lib/text-field.d.ts +319 -0
- package/textfield/lib/text-field.js +707 -0
- package/textfield/lib/text-field.js.map +1 -0
- package/textfield/outlined-text-field.d.ts +21 -0
- package/textfield/outlined-text-field.js +31 -0
- package/textfield/outlined-text-field.js.map +1 -0
- package/tokens/_index.scss +6 -0
- package/tokens/latest/_index.scss +186 -0
- package/tokens/latest/_md-comp-assist-chip.scss +98 -0
- package/tokens/latest/_md-comp-badge.scss +51 -0
- package/tokens/latest/_md-comp-banner.scss +99 -0
- package/tokens/latest/_md-comp-bottom-app-bar.scss +36 -0
- package/tokens/latest/_md-comp-checkbox.scss +119 -0
- package/tokens/latest/_md-comp-circular-progress-indicator.scss +37 -0
- package/tokens/latest/_md-comp-date-input-modal.scss +76 -0
- package/tokens/latest/_md-comp-date-picker-docked.scss +210 -0
- package/tokens/latest/_md-comp-date-picker-modal.scss +254 -0
- package/tokens/latest/_md-comp-dialog.scss +115 -0
- package/tokens/latest/_md-comp-divider.scss +25 -0
- package/tokens/latest/_md-comp-elevated-button.scss +83 -0
- package/tokens/latest/_md-comp-elevated-card.scss +59 -0
- package/tokens/latest/_md-comp-extended-fab-branded.scss +77 -0
- package/tokens/latest/_md-comp-extended-fab-primary.scss +80 -0
- package/tokens/latest/_md-comp-extended-fab-secondary.scss +83 -0
- package/tokens/latest/_md-comp-extended-fab-surface.scss +81 -0
- package/tokens/latest/_md-comp-extended-fab-tertiary.scss +80 -0
- package/tokens/latest/_md-comp-fab-branded-large.scss +59 -0
- package/tokens/latest/_md-comp-fab-branded.scss +58 -0
- package/tokens/latest/_md-comp-fab-primary-large.scss +61 -0
- package/tokens/latest/_md-comp-fab-primary-small.scss +61 -0
- package/tokens/latest/_md-comp-fab-primary.scss +61 -0
- package/tokens/latest/_md-comp-fab-secondary-large.scss +63 -0
- package/tokens/latest/_md-comp-fab-secondary-small.scss +62 -0
- package/tokens/latest/_md-comp-fab-secondary.scss +63 -0
- package/tokens/latest/_md-comp-fab-surface-large.scss +62 -0
- package/tokens/latest/_md-comp-fab-surface-small.scss +62 -0
- package/tokens/latest/_md-comp-fab-surface.scss +62 -0
- package/tokens/latest/_md-comp-fab-tertiary-large.scss +61 -0
- package/tokens/latest/_md-comp-fab-tertiary-small.scss +61 -0
- package/tokens/latest/_md-comp-fab-tertiary.scss +61 -0
- package/tokens/latest/_md-comp-filled-autocomplete.scss +235 -0
- package/tokens/latest/_md-comp-filled-button.scss +87 -0
- package/tokens/latest/_md-comp-filled-card.scss +59 -0
- package/tokens/latest/_md-comp-filled-icon-button.scss +72 -0
- package/tokens/latest/_md-comp-filled-menu-button.scss +89 -0
- package/tokens/latest/_md-comp-filled-select.scss +243 -0
- package/tokens/latest/_md-comp-filled-text-field.scss +146 -0
- package/tokens/latest/_md-comp-filled-tonal-button.scss +88 -0
- package/tokens/latest/_md-comp-filled-tonal-icon-button.scss +83 -0
- package/tokens/latest/_md-comp-filter-chip.scss +172 -0
- package/tokens/latest/_md-comp-full-screen-dialog.scss +131 -0
- package/tokens/latest/_md-comp-icon-button.scss +66 -0
- package/tokens/latest/_md-comp-input-chip.scss +112 -0
- package/tokens/latest/_md-comp-linear-progress-indicator.scss +39 -0
- package/tokens/latest/_md-comp-list.scss +205 -0
- package/tokens/latest/_md-comp-menu.scss +113 -0
- package/tokens/latest/_md-comp-navigation-bar.scss +97 -0
- package/tokens/latest/_md-comp-navigation-drawer.scss +137 -0
- package/tokens/latest/_md-comp-navigation-rail.scss +132 -0
- package/tokens/latest/_md-comp-outlined-autocomplete.scss +223 -0
- package/tokens/latest/_md-comp-outlined-button.scss +80 -0
- package/tokens/latest/_md-comp-outlined-card.scss +65 -0
- package/tokens/latest/_md-comp-outlined-icon-button.scss +68 -0
- package/tokens/latest/_md-comp-outlined-menu-button.scss +83 -0
- package/tokens/latest/_md-comp-outlined-segmented-button.scss +97 -0
- package/tokens/latest/_md-comp-outlined-select.scss +231 -0
- package/tokens/latest/_md-comp-outlined-text-field.scss +140 -0
- package/tokens/latest/_md-comp-plain-tooltip.scss +46 -0
- package/tokens/latest/_md-comp-primary-navigation-tab.scss +110 -0
- package/tokens/latest/_md-comp-radio-button.scss +58 -0
- package/tokens/latest/_md-comp-rich-tooltip.scss +98 -0
- package/tokens/latest/_md-comp-search-bar.scss +84 -0
- package/tokens/latest/_md-comp-search-view.scss +79 -0
- package/tokens/latest/_md-comp-secondary-navigation-tab.scss +78 -0
- package/tokens/latest/_md-comp-sheet-bottom.scss +41 -0
- package/tokens/latest/_md-comp-sheet-floating.scss +34 -0
- package/tokens/latest/_md-comp-sheet-side.scss +75 -0
- package/tokens/latest/_md-comp-slider.scss +105 -0
- package/tokens/latest/_md-comp-snackbar.scss +91 -0
- package/tokens/latest/_md-comp-standard-menu-button.scss +82 -0
- package/tokens/latest/_md-comp-suggestion-chip.scss +90 -0
- package/tokens/latest/_md-comp-switch.scss +126 -0
- package/tokens/latest/_md-comp-text-button.scss +75 -0
- package/tokens/latest/_md-comp-time-input.scss +184 -0
- package/tokens/latest/_md-comp-time-picker.scss +235 -0
- package/tokens/latest/_md-comp-top-app-bar-large.scss +57 -0
- package/tokens/latest/_md-comp-top-app-bar-medium.scss +56 -0
- package/tokens/latest/_md-comp-top-app-bar-small-centered.scss +60 -0
- package/tokens/latest/_md-comp-top-app-bar-small.scss +58 -0
- package/tokens/latest/_md-ref-palette.scss +95 -0
- package/tokens/latest/_md-ref-typeface.scss +20 -0
- package/tokens/latest/_md-sys-color.scss +1006 -0
- package/tokens/latest/_md-sys-elevation.scss +30 -0
- package/tokens/latest/_md-sys-motion.scss +51 -0
- package/tokens/latest/_md-sys-shape.scss +26 -0
- package/tokens/latest/_md-sys-state.scss +19 -0
- package/tokens/latest/_md-sys-typescale.scss +204 -0
- package/tokens/v0_75/_index.scss +154 -0
- package/tokens/v0_75/_md-comp-assist-chip.scss +98 -0
- package/tokens/v0_75/_md-comp-badge.scss +51 -0
- package/tokens/v0_75/_md-comp-banner.scss +99 -0
- package/tokens/v0_75/_md-comp-bottom-app-bar.scss +36 -0
- package/tokens/v0_75/_md-comp-checkbox.scss +59 -0
- package/tokens/v0_75/_md-comp-circular-progress-indicator.scss +37 -0
- package/tokens/v0_75/_md-comp-dialog.scss +102 -0
- package/tokens/v0_75/_md-comp-elevated-button.scss +83 -0
- package/tokens/v0_75/_md-comp-elevated-card.scss +56 -0
- package/tokens/v0_75/_md-comp-extended-fab-branded.scss +77 -0
- package/tokens/v0_75/_md-comp-extended-fab-primary.scss +80 -0
- package/tokens/v0_75/_md-comp-extended-fab-secondary.scss +83 -0
- package/tokens/v0_75/_md-comp-extended-fab-surface.scss +81 -0
- package/tokens/v0_75/_md-comp-extended-fab-tertiary.scss +80 -0
- package/tokens/v0_75/_md-comp-fab-branded-large.scss +59 -0
- package/tokens/v0_75/_md-comp-fab-branded.scss +58 -0
- package/tokens/v0_75/_md-comp-fab-primary-large.scss +61 -0
- package/tokens/v0_75/_md-comp-fab-primary-small.scss +61 -0
- package/tokens/v0_75/_md-comp-fab-primary.scss +61 -0
- package/tokens/v0_75/_md-comp-fab-secondary-large.scss +63 -0
- package/tokens/v0_75/_md-comp-fab-secondary-small.scss +62 -0
- package/tokens/v0_75/_md-comp-fab-secondary.scss +63 -0
- package/tokens/v0_75/_md-comp-fab-surface-large.scss +62 -0
- package/tokens/v0_75/_md-comp-fab-surface-small.scss +62 -0
- package/tokens/v0_75/_md-comp-fab-surface.scss +62 -0
- package/tokens/v0_75/_md-comp-fab-tertiary-large.scss +61 -0
- package/tokens/v0_75/_md-comp-fab-tertiary-small.scss +61 -0
- package/tokens/v0_75/_md-comp-fab-tertiary.scss +61 -0
- package/tokens/v0_75/_md-comp-filled-button-tonal.scss +84 -0
- package/tokens/v0_75/_md-comp-filled-button.scss +87 -0
- package/tokens/v0_75/_md-comp-filled-card.scss +56 -0
- package/tokens/v0_75/_md-comp-filled-icon-button.scss +72 -0
- package/tokens/v0_75/_md-comp-filled-text-field.scss +142 -0
- package/tokens/v0_75/_md-comp-filled-tonal-button.scss +88 -0
- package/tokens/v0_75/_md-comp-filled-tonal-icon-button.scss +83 -0
- package/tokens/v0_75/_md-comp-filter-chip.scss +172 -0
- package/tokens/v0_75/_md-comp-full-screen-dialog.scss +131 -0
- package/tokens/v0_75/_md-comp-icon-button.scss +79 -0
- package/tokens/v0_75/_md-comp-input-chip.scss +112 -0
- package/tokens/v0_75/_md-comp-linear-progress-indicator.scss +39 -0
- package/tokens/v0_75/_md-comp-list.scss +205 -0
- package/tokens/v0_75/_md-comp-menu.scss +113 -0
- package/tokens/v0_75/_md-comp-navigation-bar.scss +131 -0
- package/tokens/v0_75/_md-comp-navigation-drawer.scss +137 -0
- package/tokens/v0_75/_md-comp-navigation-rail.scss +136 -0
- package/tokens/v0_75/_md-comp-outlined-button.scss +80 -0
- package/tokens/v0_75/_md-comp-outlined-card.scss +62 -0
- package/tokens/v0_75/_md-comp-outlined-icon-button.scss +68 -0
- package/tokens/v0_75/_md-comp-outlined-segmented-button.scss +96 -0
- package/tokens/v0_75/_md-comp-outlined-text-field.scss +136 -0
- package/tokens/v0_75/_md-comp-primary-navigation-tab.scss +116 -0
- package/tokens/v0_75/_md-comp-radio-button.scss +58 -0
- package/tokens/v0_75/_md-comp-rich-tooltip.scss +98 -0
- package/tokens/v0_75/_md-comp-secondary-navigation-tab.scss +75 -0
- package/tokens/v0_75/_md-comp-slider.scss +129 -0
- package/tokens/v0_75/_md-comp-snackbar.scss +77 -0
- package/tokens/v0_75/_md-comp-suggestion-chip.scss +90 -0
- package/tokens/v0_75/_md-comp-switch.scss +92 -0
- package/tokens/v0_75/_md-comp-text-button.scss +75 -0
- package/tokens/v0_75/_md-comp-top-app-bar-compact-centered.scss +53 -0
- package/tokens/v0_75/_md-comp-top-app-bar-compact.scss +43 -0
- package/tokens/v0_75/_md-comp-top-app-bar-large.scss +57 -0
- package/tokens/v0_75/_md-comp-top-app-bar-medium.scss +56 -0
- package/tokens/v0_75/_md-comp-top-app-bar-small-centered.scss +60 -0
- package/tokens/v0_75/_md-comp-top-app-bar-small.scss +58 -0
- package/tokens/v0_75/_md-ref-palette.scss +186 -0
- package/tokens/v0_75/_md-ref-typeface.scss +25 -0
- package/tokens/v0_75/_md-sys-color.scss +86 -0
- package/tokens/v0_75/_md-sys-elevation.scss +30 -0
- package/tokens/v0_75/_md-sys-motion.scss +61 -0
- package/tokens/v0_75/_md-sys-shape.scss +29 -0
- package/tokens/v0_75/_md-sys-state.scss +19 -0
- package/tokens/v0_75/_md-sys-typescale.scss +252 -0
- package/tokens/v0_93/_index.scss +184 -0
- package/tokens/v0_93/_md-comp-assist-chip.scss +98 -0
- package/tokens/v0_93/_md-comp-badge.scss +51 -0
- package/tokens/v0_93/_md-comp-banner.scss +99 -0
- package/tokens/v0_93/_md-comp-bottom-app-bar.scss +36 -0
- package/tokens/v0_93/_md-comp-checkbox.scss +119 -0
- package/tokens/v0_93/_md-comp-circular-progress-indicator.scss +37 -0
- package/tokens/v0_93/_md-comp-date-input-modal.scss +76 -0
- package/tokens/v0_93/_md-comp-date-picker-docked.scss +210 -0
- package/tokens/v0_93/_md-comp-date-picker-modal.scss +254 -0
- package/tokens/v0_93/_md-comp-dialog.scss +101 -0
- package/tokens/v0_93/_md-comp-divider.scss +25 -0
- package/tokens/v0_93/_md-comp-elevated-button.scss +83 -0
- package/tokens/v0_93/_md-comp-elevated-card.scss +59 -0
- package/tokens/v0_93/_md-comp-extended-fab-branded.scss +77 -0
- package/tokens/v0_93/_md-comp-extended-fab-primary.scss +80 -0
- package/tokens/v0_93/_md-comp-extended-fab-secondary.scss +83 -0
- package/tokens/v0_93/_md-comp-extended-fab-surface.scss +81 -0
- package/tokens/v0_93/_md-comp-extended-fab-tertiary.scss +80 -0
- package/tokens/v0_93/_md-comp-fab-branded-large.scss +59 -0
- package/tokens/v0_93/_md-comp-fab-branded.scss +58 -0
- package/tokens/v0_93/_md-comp-fab-primary-large.scss +61 -0
- package/tokens/v0_93/_md-comp-fab-primary-small.scss +61 -0
- package/tokens/v0_93/_md-comp-fab-primary.scss +61 -0
- package/tokens/v0_93/_md-comp-fab-secondary-large.scss +63 -0
- package/tokens/v0_93/_md-comp-fab-secondary-small.scss +62 -0
- package/tokens/v0_93/_md-comp-fab-secondary.scss +63 -0
- package/tokens/v0_93/_md-comp-fab-surface-large.scss +62 -0
- package/tokens/v0_93/_md-comp-fab-surface-small.scss +62 -0
- package/tokens/v0_93/_md-comp-fab-surface.scss +62 -0
- package/tokens/v0_93/_md-comp-fab-tertiary-large.scss +61 -0
- package/tokens/v0_93/_md-comp-fab-tertiary-small.scss +61 -0
- package/tokens/v0_93/_md-comp-fab-tertiary.scss +61 -0
- package/tokens/v0_93/_md-comp-filled-autocomplete.scss +235 -0
- package/tokens/v0_93/_md-comp-filled-button.scss +87 -0
- package/tokens/v0_93/_md-comp-filled-card.scss +59 -0
- package/tokens/v0_93/_md-comp-filled-icon-button.scss +72 -0
- package/tokens/v0_93/_md-comp-filled-menu-button.scss +89 -0
- package/tokens/v0_93/_md-comp-filled-select.scss +243 -0
- package/tokens/v0_93/_md-comp-filled-text-field.scss +146 -0
- package/tokens/v0_93/_md-comp-filled-tonal-button.scss +88 -0
- package/tokens/v0_93/_md-comp-filled-tonal-icon-button.scss +83 -0
- package/tokens/v0_93/_md-comp-filter-chip.scss +172 -0
- package/tokens/v0_93/_md-comp-full-screen-dialog.scss +131 -0
- package/tokens/v0_93/_md-comp-icon-button.scss +66 -0
- package/tokens/v0_93/_md-comp-input-chip.scss +112 -0
- package/tokens/v0_93/_md-comp-linear-progress-indicator.scss +39 -0
- package/tokens/v0_93/_md-comp-list.scss +205 -0
- package/tokens/v0_93/_md-comp-menu.scss +113 -0
- package/tokens/v0_93/_md-comp-navigation-bar.scss +97 -0
- package/tokens/v0_93/_md-comp-navigation-drawer.scss +137 -0
- package/tokens/v0_93/_md-comp-navigation-rail.scss +132 -0
- package/tokens/v0_93/_md-comp-outlined-autocomplete.scss +223 -0
- package/tokens/v0_93/_md-comp-outlined-button.scss +80 -0
- package/tokens/v0_93/_md-comp-outlined-card.scss +65 -0
- package/tokens/v0_93/_md-comp-outlined-icon-button.scss +68 -0
- package/tokens/v0_93/_md-comp-outlined-menu-button.scss +83 -0
- package/tokens/v0_93/_md-comp-outlined-segmented-button.scss +97 -0
- package/tokens/v0_93/_md-comp-outlined-select.scss +231 -0
- package/tokens/v0_93/_md-comp-outlined-text-field.scss +140 -0
- package/tokens/v0_93/_md-comp-plain-tooltip.scss +46 -0
- package/tokens/v0_93/_md-comp-primary-navigation-tab.scss +110 -0
- package/tokens/v0_93/_md-comp-radio-button.scss +58 -0
- package/tokens/v0_93/_md-comp-rich-tooltip.scss +98 -0
- package/tokens/v0_93/_md-comp-search-bar.scss +84 -0
- package/tokens/v0_93/_md-comp-search-view.scss +79 -0
- package/tokens/v0_93/_md-comp-secondary-navigation-tab.scss +78 -0
- package/tokens/v0_93/_md-comp-sheet-bottom.scss +41 -0
- package/tokens/v0_93/_md-comp-sheet-side.scss +75 -0
- package/tokens/v0_93/_md-comp-slider.scss +105 -0
- package/tokens/v0_93/_md-comp-snackbar.scss +91 -0
- package/tokens/v0_93/_md-comp-standard-menu-button.scss +82 -0
- package/tokens/v0_93/_md-comp-suggestion-chip.scss +90 -0
- package/tokens/v0_93/_md-comp-switch.scss +126 -0
- package/tokens/v0_93/_md-comp-text-button.scss +75 -0
- package/tokens/v0_93/_md-comp-time-input.scss +184 -0
- package/tokens/v0_93/_md-comp-time-picker.scss +235 -0
- package/tokens/v0_93/_md-comp-top-app-bar-large.scss +57 -0
- package/tokens/v0_93/_md-comp-top-app-bar-medium.scss +56 -0
- package/tokens/v0_93/_md-comp-top-app-bar-small-centered.scss +60 -0
- package/tokens/v0_93/_md-comp-top-app-bar-small.scss +58 -0
- package/tokens/v0_93/_md-ref-palette.scss +95 -0
- package/tokens/v0_93/_md-ref-typeface.scss +20 -0
- package/tokens/v0_93/_md-sys-color.scss +1006 -0
- package/tokens/v0_93/_md-sys-elevation.scss +30 -0
- package/tokens/v0_93/_md-sys-motion.scss +51 -0
- package/tokens/v0_93/_md-sys-shape.scss +26 -0
- package/tokens/v0_93/_md-sys-state.scss +19 -0
- package/tokens/v0_93/_md-sys-typescale.scss +204 -0
- package/types/aria.d.ts +48 -0
- package/types/keys.d.ts +57 -0
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
@use 'sass:map';
|
|
8
|
+
@use '@material/web/compat/theme/keys';
|
|
9
|
+
@use '@material/web/sass/resolvers';
|
|
10
|
+
@use '@material/web/sass/theme';
|
|
11
|
+
@use './chip-theme';
|
|
12
|
+
|
|
13
|
+
$_light-theme: (
|
|
14
|
+
container-shape: null,
|
|
15
|
+
container-height: null,
|
|
16
|
+
flat-container-elevation: null,
|
|
17
|
+
flat-outline-color: null,
|
|
18
|
+
flat-outline-width: null,
|
|
19
|
+
elevated-container-elevation: null,
|
|
20
|
+
elevated-container-color: null,
|
|
21
|
+
elevated-container-shadow-color: null,
|
|
22
|
+
label-text-font: null,
|
|
23
|
+
label-text-line-height: null,
|
|
24
|
+
label-text-size: null,
|
|
25
|
+
label-text-weight: null,
|
|
26
|
+
label-text-tracking: null,
|
|
27
|
+
label-text-color: null,
|
|
28
|
+
flat-disabled-outline-color: null,
|
|
29
|
+
flat-disabled-outline-opacity: null,
|
|
30
|
+
disabled-label-text-color: null,
|
|
31
|
+
disabled-label-text-opacity: null,
|
|
32
|
+
elevated-disabled-container-elevation: null,
|
|
33
|
+
elevated-disabled-container-color: null,
|
|
34
|
+
elevated-disabled-container-opacity: null,
|
|
35
|
+
hover-state-layer-color: null,
|
|
36
|
+
hover-state-layer-opacity: null,
|
|
37
|
+
hover-label-text-color: null,
|
|
38
|
+
elevated-hover-container-elevation: null,
|
|
39
|
+
focus-state-layer-color: null,
|
|
40
|
+
focus-state-layer-opacity: null,
|
|
41
|
+
focus-label-text-color: null,
|
|
42
|
+
flat-focus-outline-color: null,
|
|
43
|
+
elevated-focus-container-elevation: null,
|
|
44
|
+
pressed-state-layer-color: null,
|
|
45
|
+
pressed-state-layer-opacity: null,
|
|
46
|
+
pressed-label-text-color: null,
|
|
47
|
+
elevated-pressed-container-elevation: null,
|
|
48
|
+
container-surface-tint-layer-color: null,
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
$_custom-property-prefix: 'suggestion-chip';
|
|
52
|
+
|
|
53
|
+
@mixin theme($theme, $resolvers: resolvers.$material) {
|
|
54
|
+
@include theme.validate-theme($_light-theme, $theme);
|
|
55
|
+
|
|
56
|
+
// Resolve elevation.
|
|
57
|
+
@each $key
|
|
58
|
+
in (
|
|
59
|
+
flat-container-elevation,
|
|
60
|
+
elevated-container-elevation,
|
|
61
|
+
elevated-disabled-container-elevation,
|
|
62
|
+
elevated-hover-container-elevation,
|
|
63
|
+
elevated-focus-container-elevation,
|
|
64
|
+
elevated-pressed-container-elevation
|
|
65
|
+
)
|
|
66
|
+
{
|
|
67
|
+
$value: map.get($theme, $key);
|
|
68
|
+
@if $value {
|
|
69
|
+
$theme: map.set(
|
|
70
|
+
$theme,
|
|
71
|
+
$key,
|
|
72
|
+
meta.call(
|
|
73
|
+
$elevation-resolver: map.get($resolvers, elevation),
|
|
74
|
+
$elevation: $value,
|
|
75
|
+
$shadow-color: map.get($theme, elevated-container-shadow-color),
|
|
76
|
+
)
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
@include keys.declare-custom-properties(
|
|
82
|
+
$theme,
|
|
83
|
+
$prefix: $_custom-property-prefix
|
|
84
|
+
);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
@mixin theme-styles($theme, $resolvers: resolvers.$material) {
|
|
88
|
+
@include theme.validate-theme($_light-theme, $theme);
|
|
89
|
+
$theme: keys.create-theme-properties(
|
|
90
|
+
$theme,
|
|
91
|
+
$prefix: $_custom-property-prefix
|
|
92
|
+
);
|
|
93
|
+
@include chip-theme.theme-styles($theme, $resolvers: $resolvers);
|
|
94
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MDCChipActionFocusBehavior, MDCChipActionType } from '../../action/lib/constants.js';
|
|
7
|
+
import { MDCChipAttributes, MDCChipCssClasses, MDCChipEvents } from './constants.js';
|
|
8
|
+
/**
|
|
9
|
+
* Defines the shape of the adapter expected by the foundation.
|
|
10
|
+
* Implement this adapter for your framework of choice to delegate updates to
|
|
11
|
+
* the component in your framework of choice. See architecture documentation
|
|
12
|
+
* for more details.
|
|
13
|
+
* https://github.com/material-components/material-components-web/blob/master/docs/code/architecture.md
|
|
14
|
+
*/
|
|
15
|
+
export interface MDCChipAdapter {
|
|
16
|
+
/** Adds the given class to the root element. */
|
|
17
|
+
addClass(className: MDCChipCssClasses): void;
|
|
18
|
+
/** Emits the given event with the given detail. */
|
|
19
|
+
emitEvent<D extends object>(eventName: MDCChipEvents, eventDetail: D): void;
|
|
20
|
+
/** Returns the child actions provided by the chip. */
|
|
21
|
+
getActions(): MDCChipActionType[];
|
|
22
|
+
/** Returns the value for the given attribute, if it exists. */
|
|
23
|
+
getAttribute(attrName: MDCChipAttributes): string | null;
|
|
24
|
+
/** Returns the ID of the root element. */
|
|
25
|
+
getElementID(): string;
|
|
26
|
+
/** Returns the offset width of the root element. */
|
|
27
|
+
getOffsetWidth(): number;
|
|
28
|
+
/** Returns true if the root element has the given class. */
|
|
29
|
+
hasClass(className: MDCChipCssClasses): boolean;
|
|
30
|
+
/** Proxies to the MDCChipAction#isSelectable method. */
|
|
31
|
+
isActionSelectable(action: MDCChipActionType): boolean;
|
|
32
|
+
/** Proxies to the MDCChipAction#isSelected method. */
|
|
33
|
+
isActionSelected(action: MDCChipActionType): boolean;
|
|
34
|
+
/** Proxies to the MDCChipAction#isFocusable method. */
|
|
35
|
+
isActionFocusable(action: MDCChipActionType): boolean;
|
|
36
|
+
/** Proxies to the MDCChipAction#isDisabled method. */
|
|
37
|
+
isActionDisabled(action: MDCChipActionType): boolean;
|
|
38
|
+
/** Returns true if the text direction is right-to-left. */
|
|
39
|
+
isRTL(): boolean;
|
|
40
|
+
/** Removes the given class from the root element. */
|
|
41
|
+
removeClass(className: MDCChipCssClasses): void;
|
|
42
|
+
/** Proxies to the MDCChipAction#setDisabled method. */
|
|
43
|
+
setActionDisabled(action: MDCChipActionType, isDisabled: boolean): void;
|
|
44
|
+
/** Proxies to the MDCChipAction#setFocus method. */
|
|
45
|
+
setActionFocus(action: MDCChipActionType, behavior: MDCChipActionFocusBehavior): void;
|
|
46
|
+
/** Proxies to the MDCChipAction#setSelected method. */
|
|
47
|
+
setActionSelected(action: MDCChipActionType, isSelected: boolean): void;
|
|
48
|
+
/** Sets the style property to the given value. */
|
|
49
|
+
setStyleProperty(property: string, value: string): void;
|
|
50
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {MDCChipActionFocusBehavior, MDCChipActionType} from '../../action/lib/constants.js';\n\nimport {MDCChipAttributes, MDCChipCssClasses, MDCChipEvents} from './constants.js';\n\n/**\n * Defines the shape of the adapter expected by the foundation.\n * Implement this adapter for your framework of choice to delegate updates to\n * the component in your framework of choice. See architecture documentation\n * for more details.\n * https://github.com/material-components/material-components-web/blob/master/docs/code/architecture.md\n */\nexport interface MDCChipAdapter {\n /** Adds the given class to the root element. */\n addClass(className: MDCChipCssClasses): void;\n\n /** Emits the given event with the given detail. */\n emitEvent<D extends object>(eventName: MDCChipEvents, eventDetail: D): void;\n\n /** Returns the child actions provided by the chip. */\n getActions(): MDCChipActionType[];\n\n /** Returns the value for the given attribute, if it exists. */\n getAttribute(attrName: MDCChipAttributes): string|null;\n\n /** Returns the ID of the root element. */\n getElementID(): string;\n\n /** Returns the offset width of the root element. */\n getOffsetWidth(): number;\n\n /** Returns true if the root element has the given class. */\n hasClass(className: MDCChipCssClasses): boolean;\n\n /** Proxies to the MDCChipAction#isSelectable method. */\n isActionSelectable(action: MDCChipActionType): boolean;\n\n /** Proxies to the MDCChipAction#isSelected method. */\n isActionSelected(action: MDCChipActionType): boolean;\n\n /** Proxies to the MDCChipAction#isFocusable method. */\n isActionFocusable(action: MDCChipActionType): boolean;\n\n /** Proxies to the MDCChipAction#isDisabled method. */\n isActionDisabled(action: MDCChipActionType): boolean;\n\n /** Returns true if the text direction is right-to-left. */\n isRTL(): boolean;\n\n /** Removes the given class from the root element. */\n removeClass(className: MDCChipCssClasses): void;\n\n /** Proxies to the MDCChipAction#setDisabled method. */\n setActionDisabled(action: MDCChipActionType, isDisabled: boolean): void;\n\n /** Proxies to the MDCChipAction#setFocus method. */\n setActionFocus(\n action: MDCChipActionType, behavior: MDCChipActionFocusBehavior): void;\n\n /** Proxies to the MDCChipAction#setSelected method. */\n setActionSelected(action: MDCChipActionType, isSelected: boolean): void;\n\n /** Sets the style property to the given value. */\n setStyleProperty(property: string, value: string): void;\n}\n"]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* MDCChipCssClasses provides the named constants for class names.
|
|
8
|
+
*/
|
|
9
|
+
export declare enum MDCChipCssClasses {
|
|
10
|
+
SELECTING = "md3-chip--selecting",
|
|
11
|
+
DESELECTING = "md3-chip--deselecting",
|
|
12
|
+
SELECTING_WITH_PRIMARY_ICON = "md3-chip--selecting-with-primary-icon",
|
|
13
|
+
DESELECTING_WITH_PRIMARY_ICON = "md3-chip--deselecting-with-primary-icon",
|
|
14
|
+
DISABLED = "md3-chip--disabled",
|
|
15
|
+
ENTER = "md3n-chip--enter",
|
|
16
|
+
EXIT = "md3-chip--exit",
|
|
17
|
+
SELECTED = "md3-chip--selected",
|
|
18
|
+
HIDDEN = "md3-chip--hidden",
|
|
19
|
+
WITH_PRIMARY_ICON = "md3-chip--with-primary-icon"
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* MDCChipEvents provides the named constants for emitted events.
|
|
23
|
+
*/
|
|
24
|
+
export declare enum MDCChipEvents {
|
|
25
|
+
INTERACTION = "MDCChip:interaction",
|
|
26
|
+
NAVIGATION = "MDCChip:navigation",
|
|
27
|
+
ANIMATION = "MDCChip:animation"
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* MDCChipAttributes provides the named constants for strings used by the
|
|
31
|
+
* foundation.
|
|
32
|
+
*/
|
|
33
|
+
export declare enum MDCChipAttributes {
|
|
34
|
+
DATA_REMOVED_ANNOUNCEMENT = "data-md3-removed-announcement",
|
|
35
|
+
DATA_ADDED_ANNOUNCEMENT = "data-md3-added-announcement"
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* MDCChipAnimation provides the names of runnable animations.
|
|
39
|
+
*/
|
|
40
|
+
export declare enum MDCChipAnimation {
|
|
41
|
+
ENTER = "md3-chip-enter",
|
|
42
|
+
EXIT = "md3-chip-exit"
|
|
43
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* MDCChipCssClasses provides the named constants for class names.
|
|
8
|
+
*/
|
|
9
|
+
export var MDCChipCssClasses;
|
|
10
|
+
(function (MDCChipCssClasses) {
|
|
11
|
+
MDCChipCssClasses["SELECTING"] = "md3-chip--selecting";
|
|
12
|
+
MDCChipCssClasses["DESELECTING"] = "md3-chip--deselecting";
|
|
13
|
+
MDCChipCssClasses["SELECTING_WITH_PRIMARY_ICON"] = "md3-chip--selecting-with-primary-icon";
|
|
14
|
+
MDCChipCssClasses["DESELECTING_WITH_PRIMARY_ICON"] = "md3-chip--deselecting-with-primary-icon";
|
|
15
|
+
MDCChipCssClasses["DISABLED"] = "md3-chip--disabled";
|
|
16
|
+
MDCChipCssClasses["ENTER"] = "md3n-chip--enter";
|
|
17
|
+
MDCChipCssClasses["EXIT"] = "md3-chip--exit";
|
|
18
|
+
MDCChipCssClasses["SELECTED"] = "md3-chip--selected";
|
|
19
|
+
MDCChipCssClasses["HIDDEN"] = "md3-chip--hidden";
|
|
20
|
+
MDCChipCssClasses["WITH_PRIMARY_ICON"] = "md3-chip--with-primary-icon";
|
|
21
|
+
})(MDCChipCssClasses || (MDCChipCssClasses = {}));
|
|
22
|
+
/**
|
|
23
|
+
* MDCChipEvents provides the named constants for emitted events.
|
|
24
|
+
*/
|
|
25
|
+
export var MDCChipEvents;
|
|
26
|
+
(function (MDCChipEvents) {
|
|
27
|
+
MDCChipEvents["INTERACTION"] = "MDCChip:interaction";
|
|
28
|
+
MDCChipEvents["NAVIGATION"] = "MDCChip:navigation";
|
|
29
|
+
MDCChipEvents["ANIMATION"] = "MDCChip:animation";
|
|
30
|
+
})(MDCChipEvents || (MDCChipEvents = {}));
|
|
31
|
+
/**
|
|
32
|
+
* MDCChipAttributes provides the named constants for strings used by the
|
|
33
|
+
* foundation.
|
|
34
|
+
*/
|
|
35
|
+
export var MDCChipAttributes;
|
|
36
|
+
(function (MDCChipAttributes) {
|
|
37
|
+
MDCChipAttributes["DATA_REMOVED_ANNOUNCEMENT"] = "data-md3-removed-announcement";
|
|
38
|
+
MDCChipAttributes["DATA_ADDED_ANNOUNCEMENT"] = "data-md3-added-announcement";
|
|
39
|
+
})(MDCChipAttributes || (MDCChipAttributes = {}));
|
|
40
|
+
/**
|
|
41
|
+
* MDCChipAnimation provides the names of runnable animations.
|
|
42
|
+
*/
|
|
43
|
+
export var MDCChipAnimation;
|
|
44
|
+
(function (MDCChipAnimation) {
|
|
45
|
+
MDCChipAnimation["ENTER"] = "md3-chip-enter";
|
|
46
|
+
MDCChipAnimation["EXIT"] = "md3-chip-exit";
|
|
47
|
+
})(MDCChipAnimation || (MDCChipAnimation = {}));
|
|
48
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,CAAN,IAAY,iBAWX;AAXD,WAAY,iBAAiB;IAC3B,sDAAiC,CAAA;IACjC,0DAAqC,CAAA;IACrC,0FAAqE,CAAA;IACrE,8FAAyE,CAAA;IACzE,oDAA+B,CAAA;IAC/B,+CAA0B,CAAA;IAC1B,4CAAuB,CAAA;IACvB,oDAA+B,CAAA;IAC/B,gDAA2B,CAAA;IAC3B,sEAAiD,CAAA;AACnD,CAAC,EAXW,iBAAiB,KAAjB,iBAAiB,QAW5B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,oDAAmC,CAAA;IACnC,kDAAiC,CAAA;IACjC,gDAA+B,CAAA;AACjC,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,gFAA2D,CAAA;IAC3D,4EAAuD,CAAA;AACzD,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,4CAAwB,CAAA;IACxB,0CAAsB,CAAA;AACxB,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,QAG3B","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * MDCChipCssClasses provides the named constants for class names.\n */\nexport enum MDCChipCssClasses {\n SELECTING = 'md3-chip--selecting',\n DESELECTING = 'md3-chip--deselecting',\n SELECTING_WITH_PRIMARY_ICON = 'md3-chip--selecting-with-primary-icon',\n DESELECTING_WITH_PRIMARY_ICON = 'md3-chip--deselecting-with-primary-icon',\n DISABLED = 'md3-chip--disabled',\n ENTER = 'md3n-chip--enter',\n EXIT = 'md3-chip--exit',\n SELECTED = 'md3-chip--selected',\n HIDDEN = 'md3-chip--hidden',\n WITH_PRIMARY_ICON = 'md3-chip--with-primary-icon',\n}\n\n/**\n * MDCChipEvents provides the named constants for emitted events.\n */\nexport enum MDCChipEvents {\n INTERACTION = 'MDCChip:interaction',\n NAVIGATION = 'MDCChip:navigation',\n ANIMATION = 'MDCChip:animation',\n}\n\n/**\n * MDCChipAttributes provides the named constants for strings used by the\n * foundation.\n */\nexport enum MDCChipAttributes {\n DATA_REMOVED_ANNOUNCEMENT = 'data-md3-removed-announcement',\n DATA_ADDED_ANNOUNCEMENT = 'data-md3-added-announcement',\n}\n\n/**\n * MDCChipAnimation provides the names of runnable animations.\n */\nexport enum MDCChipAnimation {\n ENTER = 'md3-chip-enter',\n EXIT = 'md3-chip-exit',\n}\n"]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MDCChipActionFocusBehavior, MDCChipActionType } from '../../action/lib/constants.js';
|
|
7
|
+
import { MDCChipAdapter } from './adapter.js';
|
|
8
|
+
import { MDCChipAnimation } from './constants.js';
|
|
9
|
+
import { ActionInteractionEvent, ActionNavigationEvent } from './types.js';
|
|
10
|
+
/**
|
|
11
|
+
* MDCChipFoundation provides a foundation for all chips.
|
|
12
|
+
*/
|
|
13
|
+
export declare class MDCChipFoundation {
|
|
14
|
+
private readonly adapter;
|
|
15
|
+
static get defaultAdapter(): MDCChipAdapter;
|
|
16
|
+
private readonly animFrame;
|
|
17
|
+
constructor(adapter?: Partial<MDCChipAdapter>);
|
|
18
|
+
destroy(): void;
|
|
19
|
+
getElementID(): string;
|
|
20
|
+
setDisabled(isDisabled: boolean): void;
|
|
21
|
+
isDisabled(): boolean;
|
|
22
|
+
getActions(): MDCChipActionType[];
|
|
23
|
+
isActionFocusable(action: MDCChipActionType): boolean;
|
|
24
|
+
isActionSelectable(action: MDCChipActionType): boolean;
|
|
25
|
+
isActionSelected(action: MDCChipActionType): boolean;
|
|
26
|
+
setActionFocus(action: MDCChipActionType, focus: MDCChipActionFocusBehavior): void;
|
|
27
|
+
setActionSelected(action: MDCChipActionType, isSelected: boolean): void;
|
|
28
|
+
startAnimation(animation: MDCChipAnimation): void;
|
|
29
|
+
handleAnimationEnd(event: AnimationEvent): void;
|
|
30
|
+
handleTransitionEnd(): void;
|
|
31
|
+
handleActionInteraction({ detail }: ActionInteractionEvent): void;
|
|
32
|
+
handleActionNavigation({ detail }: ActionNavigationEvent): void;
|
|
33
|
+
private directionFromKey;
|
|
34
|
+
private navigateActions;
|
|
35
|
+
private shouldRemove;
|
|
36
|
+
private getRemovedAnnouncement;
|
|
37
|
+
private getAddedAnnouncement;
|
|
38
|
+
private animateSelection;
|
|
39
|
+
private resetAnimationStyles;
|
|
40
|
+
private updateSelectionStyles;
|
|
41
|
+
}
|
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { AnimationFrame } from '@material/web/compat/animation/animationframe.js';
|
|
7
|
+
import { KEY } from '@material/web/compat/dom/keyboard.js';
|
|
8
|
+
import { MDCChipActionFocusBehavior, MDCChipActionInteractionTrigger, MDCChipActionType } from '../../action/lib/constants.js';
|
|
9
|
+
import { MDCChipAnimation, MDCChipAttributes, MDCChipCssClasses, MDCChipEvents } from './constants.js';
|
|
10
|
+
var Direction;
|
|
11
|
+
(function (Direction) {
|
|
12
|
+
Direction[Direction["UNSPECIFIED"] = 0] = "UNSPECIFIED";
|
|
13
|
+
Direction[Direction["LEFT"] = 1] = "LEFT";
|
|
14
|
+
Direction[Direction["RIGHT"] = 2] = "RIGHT";
|
|
15
|
+
})(Direction || (Direction = {}));
|
|
16
|
+
var AnimationKeys;
|
|
17
|
+
(function (AnimationKeys) {
|
|
18
|
+
AnimationKeys["SELECTION"] = "selection";
|
|
19
|
+
AnimationKeys["EXIT"] = "exit";
|
|
20
|
+
})(AnimationKeys || (AnimationKeys = {}));
|
|
21
|
+
/**
|
|
22
|
+
* MDCChipFoundation provides a foundation for all chips.
|
|
23
|
+
*/
|
|
24
|
+
export class MDCChipFoundation {
|
|
25
|
+
constructor(adapter) {
|
|
26
|
+
this.adapter = { ...MDCChipFoundation.defaultAdapter, ...adapter };
|
|
27
|
+
this.animFrame = new AnimationFrame();
|
|
28
|
+
}
|
|
29
|
+
static get defaultAdapter() {
|
|
30
|
+
return {
|
|
31
|
+
addClass: () => undefined,
|
|
32
|
+
emitEvent: () => undefined,
|
|
33
|
+
getActions: () => [],
|
|
34
|
+
getAttribute: () => null,
|
|
35
|
+
getElementID: () => '',
|
|
36
|
+
getOffsetWidth: () => 0,
|
|
37
|
+
hasClass: () => false,
|
|
38
|
+
isActionDisabled: () => false,
|
|
39
|
+
isActionFocusable: () => false,
|
|
40
|
+
isActionSelectable: () => false,
|
|
41
|
+
isActionSelected: () => false,
|
|
42
|
+
isRTL: () => false,
|
|
43
|
+
removeClass: () => undefined,
|
|
44
|
+
setActionDisabled: () => undefined,
|
|
45
|
+
setActionFocus: () => undefined,
|
|
46
|
+
setActionSelected: () => undefined,
|
|
47
|
+
setStyleProperty: () => undefined,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
destroy() {
|
|
51
|
+
this.animFrame.cancelAll();
|
|
52
|
+
}
|
|
53
|
+
getElementID() {
|
|
54
|
+
return this.adapter.getElementID();
|
|
55
|
+
}
|
|
56
|
+
setDisabled(isDisabled) {
|
|
57
|
+
const actions = this.getActions();
|
|
58
|
+
for (const action of actions) {
|
|
59
|
+
this.adapter.setActionDisabled(action, isDisabled);
|
|
60
|
+
}
|
|
61
|
+
if (isDisabled) {
|
|
62
|
+
this.adapter.addClass(MDCChipCssClasses.DISABLED);
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
this.adapter.removeClass(MDCChipCssClasses.DISABLED);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
isDisabled() {
|
|
69
|
+
const actions = this.getActions();
|
|
70
|
+
for (const action of actions) {
|
|
71
|
+
if (this.adapter.isActionDisabled(action)) {
|
|
72
|
+
return true;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
getActions() {
|
|
78
|
+
return this.adapter.getActions();
|
|
79
|
+
}
|
|
80
|
+
isActionFocusable(action) {
|
|
81
|
+
return this.adapter.isActionFocusable(action);
|
|
82
|
+
}
|
|
83
|
+
isActionSelectable(action) {
|
|
84
|
+
return this.adapter.isActionSelectable(action);
|
|
85
|
+
}
|
|
86
|
+
isActionSelected(action) {
|
|
87
|
+
return this.adapter.isActionSelected(action);
|
|
88
|
+
}
|
|
89
|
+
setActionFocus(action, focus) {
|
|
90
|
+
this.adapter.setActionFocus(action, focus);
|
|
91
|
+
}
|
|
92
|
+
setActionSelected(action, isSelected) {
|
|
93
|
+
this.adapter.setActionSelected(action, isSelected);
|
|
94
|
+
this.animateSelection(isSelected);
|
|
95
|
+
}
|
|
96
|
+
startAnimation(animation) {
|
|
97
|
+
if (animation === MDCChipAnimation.ENTER) {
|
|
98
|
+
this.adapter.addClass(MDCChipCssClasses.ENTER);
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
if (animation === MDCChipAnimation.EXIT) {
|
|
102
|
+
this.adapter.addClass(MDCChipCssClasses.EXIT);
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
handleAnimationEnd(event) {
|
|
107
|
+
const { animationName } = event;
|
|
108
|
+
if (animationName === MDCChipAnimation.ENTER) {
|
|
109
|
+
this.adapter.removeClass(MDCChipCssClasses.ENTER);
|
|
110
|
+
this.adapter.emitEvent(MDCChipEvents.ANIMATION, {
|
|
111
|
+
chipID: this.getElementID(),
|
|
112
|
+
animation: MDCChipAnimation.ENTER,
|
|
113
|
+
addedAnnouncement: this.getAddedAnnouncement(),
|
|
114
|
+
isComplete: true,
|
|
115
|
+
});
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
if (animationName === MDCChipAnimation.EXIT) {
|
|
119
|
+
this.adapter.removeClass(MDCChipCssClasses.EXIT);
|
|
120
|
+
this.adapter.addClass(MDCChipCssClasses.HIDDEN);
|
|
121
|
+
const width = this.adapter.getOffsetWidth();
|
|
122
|
+
this.adapter.setStyleProperty('width', `${width}px`);
|
|
123
|
+
// Wait two frames so the width gets applied correctly.
|
|
124
|
+
this.animFrame.request(AnimationKeys.EXIT, () => {
|
|
125
|
+
this.animFrame.request(AnimationKeys.EXIT, () => {
|
|
126
|
+
this.adapter.setStyleProperty('width', '0');
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
handleTransitionEnd() {
|
|
132
|
+
if (!this.adapter.hasClass(MDCChipCssClasses.HIDDEN))
|
|
133
|
+
return;
|
|
134
|
+
this.adapter.emitEvent(MDCChipEvents.ANIMATION, {
|
|
135
|
+
chipID: this.getElementID(),
|
|
136
|
+
animation: MDCChipAnimation.EXIT,
|
|
137
|
+
removedAnnouncement: this.getRemovedAnnouncement(),
|
|
138
|
+
isComplete: true,
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
handleActionInteraction({ detail }) {
|
|
142
|
+
const { source, actionID } = detail;
|
|
143
|
+
const isSelectable = this.adapter.isActionSelectable(source);
|
|
144
|
+
const isSelected = this.adapter.isActionSelected(source);
|
|
145
|
+
this.adapter.emitEvent(MDCChipEvents.INTERACTION, {
|
|
146
|
+
chipID: this.getElementID(),
|
|
147
|
+
shouldRemove: this.shouldRemove(detail),
|
|
148
|
+
actionID,
|
|
149
|
+
isSelectable,
|
|
150
|
+
isSelected,
|
|
151
|
+
source,
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
handleActionNavigation({ detail }) {
|
|
155
|
+
const { source, key } = detail;
|
|
156
|
+
const isRTL = this.adapter.isRTL();
|
|
157
|
+
const isTrailingActionFocusable = this.adapter.isActionFocusable(MDCChipActionType.TRAILING);
|
|
158
|
+
const isPrimaryActionFocusable = this.adapter.isActionFocusable(MDCChipActionType.PRIMARY);
|
|
159
|
+
const dir = this.directionFromKey(key, isRTL);
|
|
160
|
+
const shouldNavigateToTrailing = source === MDCChipActionType.PRIMARY &&
|
|
161
|
+
dir === Direction.RIGHT && isTrailingActionFocusable;
|
|
162
|
+
const shouldNavigateToPrimary = source === MDCChipActionType.TRAILING &&
|
|
163
|
+
dir === Direction.LEFT && isPrimaryActionFocusable;
|
|
164
|
+
if (shouldNavigateToTrailing) {
|
|
165
|
+
this.navigateActions({ from: source, to: MDCChipActionType.TRAILING });
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
if (shouldNavigateToPrimary) {
|
|
169
|
+
this.navigateActions({ from: source, to: MDCChipActionType.PRIMARY });
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
this.adapter.emitEvent(MDCChipEvents.NAVIGATION, {
|
|
173
|
+
chipID: this.getElementID(),
|
|
174
|
+
isRTL,
|
|
175
|
+
source,
|
|
176
|
+
key,
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
directionFromKey(key, isRTL) {
|
|
180
|
+
const isLeftKey = key === KEY.ARROW_LEFT;
|
|
181
|
+
const isRightKey = key === KEY.ARROW_RIGHT;
|
|
182
|
+
if (!isRTL && isLeftKey || isRTL && isRightKey) {
|
|
183
|
+
return Direction.LEFT;
|
|
184
|
+
}
|
|
185
|
+
if (!isRTL && isRightKey || isRTL && isLeftKey) {
|
|
186
|
+
return Direction.RIGHT;
|
|
187
|
+
}
|
|
188
|
+
return Direction.UNSPECIFIED;
|
|
189
|
+
}
|
|
190
|
+
navigateActions(nav) {
|
|
191
|
+
this.adapter.setActionFocus(nav.from, MDCChipActionFocusBehavior.NOT_FOCUSABLE);
|
|
192
|
+
this.adapter.setActionFocus(nav.to, MDCChipActionFocusBehavior.FOCUSABLE_AND_FOCUSED);
|
|
193
|
+
}
|
|
194
|
+
shouldRemove({ source, trigger }) {
|
|
195
|
+
if (trigger === MDCChipActionInteractionTrigger.BACKSPACE_KEY ||
|
|
196
|
+
trigger === MDCChipActionInteractionTrigger.DELETE_KEY) {
|
|
197
|
+
return true;
|
|
198
|
+
}
|
|
199
|
+
return source === MDCChipActionType.TRAILING;
|
|
200
|
+
}
|
|
201
|
+
getRemovedAnnouncement() {
|
|
202
|
+
const msg = this.adapter.getAttribute(MDCChipAttributes.DATA_REMOVED_ANNOUNCEMENT);
|
|
203
|
+
return msg || undefined;
|
|
204
|
+
}
|
|
205
|
+
getAddedAnnouncement() {
|
|
206
|
+
const msg = this.adapter.getAttribute(MDCChipAttributes.DATA_ADDED_ANNOUNCEMENT);
|
|
207
|
+
return msg || undefined;
|
|
208
|
+
}
|
|
209
|
+
animateSelection(isSelected) {
|
|
210
|
+
this.resetAnimationStyles();
|
|
211
|
+
// Wait two frames to ensure the animation classes are unset
|
|
212
|
+
this.animFrame.request(AnimationKeys.SELECTION, () => {
|
|
213
|
+
this.animFrame.request(AnimationKeys.SELECTION, () => {
|
|
214
|
+
this.updateSelectionStyles(isSelected);
|
|
215
|
+
});
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
resetAnimationStyles() {
|
|
219
|
+
this.adapter.removeClass(MDCChipCssClasses.SELECTING);
|
|
220
|
+
this.adapter.removeClass(MDCChipCssClasses.DESELECTING);
|
|
221
|
+
this.adapter.removeClass(MDCChipCssClasses.SELECTING_WITH_PRIMARY_ICON);
|
|
222
|
+
this.adapter.removeClass(MDCChipCssClasses.DESELECTING_WITH_PRIMARY_ICON);
|
|
223
|
+
}
|
|
224
|
+
updateSelectionStyles(isSelected) {
|
|
225
|
+
const hasIcon = this.adapter.hasClass(MDCChipCssClasses.WITH_PRIMARY_ICON);
|
|
226
|
+
if (hasIcon && isSelected) {
|
|
227
|
+
this.adapter.addClass(MDCChipCssClasses.SELECTING_WITH_PRIMARY_ICON);
|
|
228
|
+
this.animFrame.request(AnimationKeys.SELECTION, () => {
|
|
229
|
+
this.adapter.addClass(MDCChipCssClasses.SELECTED);
|
|
230
|
+
});
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
if (hasIcon && !isSelected) {
|
|
234
|
+
this.adapter.addClass(MDCChipCssClasses.DESELECTING_WITH_PRIMARY_ICON);
|
|
235
|
+
this.animFrame.request(AnimationKeys.SELECTION, () => {
|
|
236
|
+
this.adapter.removeClass(MDCChipCssClasses.SELECTED);
|
|
237
|
+
});
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
if (isSelected) {
|
|
241
|
+
this.adapter.addClass(MDCChipCssClasses.SELECTING);
|
|
242
|
+
this.animFrame.request(AnimationKeys.SELECTION, () => {
|
|
243
|
+
this.adapter.addClass(MDCChipCssClasses.SELECTED);
|
|
244
|
+
});
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
if (!isSelected) {
|
|
248
|
+
this.adapter.addClass(MDCChipCssClasses.DESELECTING);
|
|
249
|
+
this.animFrame.request(AnimationKeys.SELECTION, () => {
|
|
250
|
+
this.adapter.removeClass(MDCChipCssClasses.SELECTED);
|
|
251
|
+
});
|
|
252
|
+
return;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
//# sourceMappingURL=foundation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"foundation.js","sourceRoot":"","sources":["foundation.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {AnimationFrame} from '@material/web/compat/animation/animationframe.js';\nimport {KEY} from '@material/web/compat/dom/keyboard.js';\n\nimport {MDCChipActionFocusBehavior, MDCChipActionInteractionTrigger, MDCChipActionType} from '../../action/lib/constants.js';\nimport {MDCChipActionInteractionEventDetail} from '../../action/lib/types.js';\n\nimport {MDCChipAdapter} from './adapter.js';\nimport {MDCChipAnimation, MDCChipAttributes, MDCChipCssClasses, MDCChipEvents} from './constants.js';\nimport {ActionInteractionEvent, ActionNavigationEvent, MDCChipAnimationEventDetail, MDCChipInteractionEventDetail, MDCChipNavigationEventDetail} from './types.js';\n\ninterface Navigation {\n from: MDCChipActionType;\n to: MDCChipActionType;\n}\n\nenum Direction {\n UNSPECIFIED, // Default\n LEFT,\n RIGHT,\n}\n\nenum AnimationKeys {\n SELECTION = 'selection',\n EXIT = 'exit',\n}\n\n/**\n * MDCChipFoundation provides a foundation for all chips.\n */\nexport class MDCChipFoundation {\n private readonly adapter: MDCChipAdapter;\n\n static get defaultAdapter(): MDCChipAdapter {\n return {\n addClass: () => undefined,\n emitEvent: () => undefined,\n getActions: () => [],\n getAttribute: () => null,\n getElementID: () => '',\n getOffsetWidth: () => 0,\n hasClass: () => false,\n isActionDisabled: () => false,\n isActionFocusable: () => false,\n isActionSelectable: () => false,\n isActionSelected: () => false,\n isRTL: () => false,\n removeClass: () => undefined,\n setActionDisabled: () => undefined,\n setActionFocus: () => undefined,\n setActionSelected: () => undefined,\n setStyleProperty: () => undefined,\n };\n }\n\n private readonly animFrame: AnimationFrame;\n\n constructor(adapter?: Partial<MDCChipAdapter>) {\n this.adapter = {...MDCChipFoundation.defaultAdapter, ...adapter};\n this.animFrame = new AnimationFrame();\n }\n\n destroy() {\n this.animFrame.cancelAll();\n }\n\n getElementID() {\n return this.adapter.getElementID();\n }\n\n setDisabled(isDisabled: boolean) {\n const actions = this.getActions();\n for (const action of actions) {\n this.adapter.setActionDisabled(action, isDisabled);\n }\n\n if (isDisabled) {\n this.adapter.addClass(MDCChipCssClasses.DISABLED);\n } else {\n this.adapter.removeClass(MDCChipCssClasses.DISABLED);\n }\n }\n\n isDisabled(): boolean {\n const actions = this.getActions();\n for (const action of actions) {\n if (this.adapter.isActionDisabled(action)) {\n return true;\n }\n }\n return false;\n }\n\n getActions(): MDCChipActionType[] {\n return this.adapter.getActions();\n }\n\n isActionFocusable(action: MDCChipActionType): boolean {\n return this.adapter.isActionFocusable(action);\n }\n\n isActionSelectable(action: MDCChipActionType): boolean {\n return this.adapter.isActionSelectable(action);\n }\n\n isActionSelected(action: MDCChipActionType): boolean {\n return this.adapter.isActionSelected(action);\n }\n\n setActionFocus(action: MDCChipActionType, focus: MDCChipActionFocusBehavior) {\n this.adapter.setActionFocus(action, focus);\n }\n\n setActionSelected(action: MDCChipActionType, isSelected: boolean) {\n this.adapter.setActionSelected(action, isSelected);\n this.animateSelection(isSelected);\n }\n\n startAnimation(animation: MDCChipAnimation) {\n if (animation === MDCChipAnimation.ENTER) {\n this.adapter.addClass(MDCChipCssClasses.ENTER);\n return;\n }\n\n if (animation === MDCChipAnimation.EXIT) {\n this.adapter.addClass(MDCChipCssClasses.EXIT);\n return;\n }\n }\n\n handleAnimationEnd(event: AnimationEvent) {\n const {animationName} = event;\n if (animationName === MDCChipAnimation.ENTER) {\n this.adapter.removeClass(MDCChipCssClasses.ENTER);\n this.adapter.emitEvent<MDCChipAnimationEventDetail>(\n MDCChipEvents.ANIMATION, {\n chipID: this.getElementID(),\n animation: MDCChipAnimation.ENTER,\n addedAnnouncement: this.getAddedAnnouncement(),\n isComplete: true,\n });\n return;\n }\n\n if (animationName === MDCChipAnimation.EXIT) {\n this.adapter.removeClass(MDCChipCssClasses.EXIT);\n this.adapter.addClass(MDCChipCssClasses.HIDDEN);\n const width = this.adapter.getOffsetWidth();\n this.adapter.setStyleProperty('width', `${width}px`);\n // Wait two frames so the width gets applied correctly.\n this.animFrame.request(AnimationKeys.EXIT, () => {\n this.animFrame.request(AnimationKeys.EXIT, () => {\n this.adapter.setStyleProperty('width', '0');\n });\n });\n }\n }\n\n handleTransitionEnd() {\n if (!this.adapter.hasClass(MDCChipCssClasses.HIDDEN)) return;\n\n this.adapter.emitEvent<MDCChipAnimationEventDetail>(\n MDCChipEvents.ANIMATION, {\n chipID: this.getElementID(),\n animation: MDCChipAnimation.EXIT,\n removedAnnouncement: this.getRemovedAnnouncement(),\n isComplete: true,\n });\n }\n\n handleActionInteraction({detail}: ActionInteractionEvent) {\n const {source, actionID} = detail;\n const isSelectable = this.adapter.isActionSelectable(source);\n const isSelected = this.adapter.isActionSelected(source);\n\n this.adapter.emitEvent<MDCChipInteractionEventDetail>(\n MDCChipEvents.INTERACTION, {\n chipID: this.getElementID(),\n shouldRemove: this.shouldRemove(detail),\n actionID,\n isSelectable,\n isSelected,\n source,\n });\n }\n\n handleActionNavigation({detail}: ActionNavigationEvent) {\n const {source, key} = detail;\n const isRTL = this.adapter.isRTL();\n const isTrailingActionFocusable =\n this.adapter.isActionFocusable(MDCChipActionType.TRAILING);\n const isPrimaryActionFocusable =\n this.adapter.isActionFocusable(MDCChipActionType.PRIMARY);\n const dir = this.directionFromKey(key, isRTL);\n\n const shouldNavigateToTrailing = source === MDCChipActionType.PRIMARY &&\n dir === Direction.RIGHT && isTrailingActionFocusable;\n\n const shouldNavigateToPrimary = source === MDCChipActionType.TRAILING &&\n dir === Direction.LEFT && isPrimaryActionFocusable;\n\n if (shouldNavigateToTrailing) {\n this.navigateActions({from: source, to: MDCChipActionType.TRAILING});\n return;\n }\n\n if (shouldNavigateToPrimary) {\n this.navigateActions({from: source, to: MDCChipActionType.PRIMARY});\n return;\n }\n\n this.adapter.emitEvent<MDCChipNavigationEventDetail>(\n MDCChipEvents.NAVIGATION, {\n chipID: this.getElementID(),\n isRTL,\n source,\n key,\n });\n }\n\n private directionFromKey(key: string, isRTL: boolean): Direction {\n const isLeftKey = key === KEY.ARROW_LEFT;\n const isRightKey = key === KEY.ARROW_RIGHT;\n if (!isRTL && isLeftKey || isRTL && isRightKey) {\n return Direction.LEFT;\n }\n\n if (!isRTL && isRightKey || isRTL && isLeftKey) {\n return Direction.RIGHT;\n }\n\n return Direction.UNSPECIFIED;\n }\n\n private navigateActions(nav: Navigation) {\n this.adapter.setActionFocus(\n nav.from, MDCChipActionFocusBehavior.NOT_FOCUSABLE);\n this.adapter.setActionFocus(\n nav.to, MDCChipActionFocusBehavior.FOCUSABLE_AND_FOCUSED);\n }\n\n private shouldRemove({source, trigger}: MDCChipActionInteractionEventDetail):\n boolean {\n if (trigger === MDCChipActionInteractionTrigger.BACKSPACE_KEY ||\n trigger === MDCChipActionInteractionTrigger.DELETE_KEY) {\n return true;\n }\n\n return source === MDCChipActionType.TRAILING;\n }\n\n private getRemovedAnnouncement(): string|undefined {\n const msg =\n this.adapter.getAttribute(MDCChipAttributes.DATA_REMOVED_ANNOUNCEMENT);\n return msg || undefined;\n }\n\n private getAddedAnnouncement(): string|undefined {\n const msg =\n this.adapter.getAttribute(MDCChipAttributes.DATA_ADDED_ANNOUNCEMENT);\n return msg || undefined;\n }\n\n private animateSelection(isSelected: boolean) {\n this.resetAnimationStyles();\n // Wait two frames to ensure the animation classes are unset\n this.animFrame.request(AnimationKeys.SELECTION, () => {\n this.animFrame.request(AnimationKeys.SELECTION, () => {\n this.updateSelectionStyles(isSelected);\n });\n });\n }\n\n private resetAnimationStyles() {\n this.adapter.removeClass(MDCChipCssClasses.SELECTING);\n this.adapter.removeClass(MDCChipCssClasses.DESELECTING);\n this.adapter.removeClass(MDCChipCssClasses.SELECTING_WITH_PRIMARY_ICON);\n this.adapter.removeClass(MDCChipCssClasses.DESELECTING_WITH_PRIMARY_ICON);\n }\n\n private updateSelectionStyles(isSelected: boolean) {\n const hasIcon = this.adapter.hasClass(MDCChipCssClasses.WITH_PRIMARY_ICON);\n if (hasIcon && isSelected) {\n this.adapter.addClass(MDCChipCssClasses.SELECTING_WITH_PRIMARY_ICON);\n this.animFrame.request(AnimationKeys.SELECTION, () => {\n this.adapter.addClass(MDCChipCssClasses.SELECTED);\n });\n return;\n }\n\n if (hasIcon && !isSelected) {\n this.adapter.addClass(MDCChipCssClasses.DESELECTING_WITH_PRIMARY_ICON);\n this.animFrame.request(AnimationKeys.SELECTION, () => {\n this.adapter.removeClass(MDCChipCssClasses.SELECTED);\n });\n return;\n }\n\n if (isSelected) {\n this.adapter.addClass(MDCChipCssClasses.SELECTING);\n this.animFrame.request(AnimationKeys.SELECTION, () => {\n this.adapter.addClass(MDCChipCssClasses.SELECTED);\n });\n return;\n }\n\n if (!isSelected) {\n this.adapter.addClass(MDCChipCssClasses.DESELECTING);\n this.animFrame.request(AnimationKeys.SELECTION, () => {\n this.adapter.removeClass(MDCChipCssClasses.SELECTED);\n });\n return;\n }\n }\n}\n\n"]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MDCChipActionType } from '../../action/lib/constants.js';
|
|
7
|
+
import { MDCChipActionInteractionEventDetail, MDCChipActionNavigationEventDetail } from '../../action/lib/types.js';
|
|
8
|
+
import { MDCChipAnimation } from './constants.js';
|
|
9
|
+
/** MDCChipInteractionEventDetail provides details for the interaction event. */
|
|
10
|
+
export interface MDCChipInteractionEventDetail {
|
|
11
|
+
actionID: string;
|
|
12
|
+
chipID: string;
|
|
13
|
+
source: MDCChipActionType;
|
|
14
|
+
shouldRemove: boolean;
|
|
15
|
+
isSelectable: boolean;
|
|
16
|
+
isSelected: boolean;
|
|
17
|
+
}
|
|
18
|
+
/** MDCChipNavigationEventDetail provides details for the navigation event. */
|
|
19
|
+
export interface MDCChipNavigationEventDetail {
|
|
20
|
+
chipID: string;
|
|
21
|
+
source: MDCChipActionType;
|
|
22
|
+
key: string;
|
|
23
|
+
isRTL: boolean;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* MDCChipAnimationEventDetail provides details for the animation event.
|
|
27
|
+
*/
|
|
28
|
+
export interface MDCChipAnimationEventDetail {
|
|
29
|
+
chipID: string;
|
|
30
|
+
animation: MDCChipAnimation;
|
|
31
|
+
isComplete: boolean;
|
|
32
|
+
addedAnnouncement?: string;
|
|
33
|
+
removedAnnouncement?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* MDCChipActionInteractionEvent is the custom event for the interaction event.
|
|
37
|
+
*/
|
|
38
|
+
export declare type ActionInteractionEvent = CustomEvent<MDCChipActionInteractionEventDetail>;
|
|
39
|
+
/**
|
|
40
|
+
* MDCChipActionInteractionEvent is the custom event for the interaction event.
|
|
41
|
+
*/
|
|
42
|
+
export declare type ActionNavigationEvent = CustomEvent<MDCChipActionNavigationEventDetail>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"AAAA;;;;GAIG","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {MDCChipActionType} from '../../action/lib/constants.js';\nimport {MDCChipActionInteractionEventDetail, MDCChipActionNavigationEventDetail} from '../../action/lib/types.js';\n\nimport {MDCChipAnimation} from './constants.js';\n\n/** MDCChipInteractionEventDetail provides details for the interaction event. */\nexport interface MDCChipInteractionEventDetail {\n actionID: string;\n chipID: string;\n source: MDCChipActionType;\n shouldRemove: boolean;\n isSelectable: boolean;\n isSelected: boolean;\n}\n\n/** MDCChipNavigationEventDetail provides details for the navigation event. */\nexport interface MDCChipNavigationEventDetail {\n chipID: string;\n source: MDCChipActionType;\n key: string;\n isRTL: boolean;\n}\n\n/**\n * MDCChipAnimationEventDetail provides details for the animation event.\n */\nexport interface MDCChipAnimationEventDetail {\n chipID: string;\n animation: MDCChipAnimation;\n isComplete: boolean;\n addedAnnouncement?: string;\n removedAnnouncement?: string;\n}\n\n/**\n * MDCChipActionInteractionEvent is the custom event for the interaction event.\n */\nexport type ActionInteractionEvent =\n CustomEvent<MDCChipActionInteractionEventDetail>;\n\n/**\n * MDCChipActionInteractionEvent is the custom event for the interaction event.\n */\nexport type ActionNavigationEvent =\n CustomEvent<MDCChipActionNavigationEventDetail>;\n"]}
|