@angular/material 16.2.2 → 17.0.0-next.1
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/_index.scss +21 -65
- package/autocomplete/index.d.ts +40 -71
- package/autocomplete/testing/index.d.ts +5 -23
- package/button/_button-base.scss +3 -3
- package/button/_button-theme-private.scss +3 -2
- package/button/_button-theme.scss +18 -25
- package/button/_fab-theme.scss +42 -48
- package/button/_icon-button-theme.scss +19 -26
- package/button/index.d.ts +22 -31
- package/card/_card-theme.scss +82 -51
- package/checkbox/_checkbox-theme.scss +72 -54
- package/checkbox/index.d.ts +22 -42
- package/checkbox/testing/index.d.ts +6 -12
- package/core/_core-theme.scss +24 -39
- package/core/index.d.ts +17 -28
- package/core/mdc-helpers/_mdc-helpers.scss +19 -22
- package/core/option/_optgroup-theme.scss +13 -23
- package/core/option/_option-theme.scss +23 -37
- package/core/ripple/_ripple-theme.scss +6 -10
- package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +17 -24
- package/core/style/_private.scss +3 -3
- package/core/style/_sass-utils.scss +7 -0
- package/core/style/_validation.scss +43 -0
- package/core/theming/_inspection.scss +256 -0
- package/core/theming/_m2-inspection.scss +211 -0
- package/core/theming/_theming.scss +169 -16
- package/core/tokens/m2/mat/_card.scss +15 -21
- package/core/tokens/m2/mat/_form-field.scss +48 -19
- package/core/tokens/m2/mat/_optgroup.scss +12 -17
- package/core/tokens/m2/mat/_option.scss +16 -28
- package/core/tokens/m2/mat/_paginator.scss +16 -18
- package/core/tokens/m2/mat/_radio.scss +7 -10
- package/core/tokens/m2/mat/_slide-toggle.scss +9 -17
- package/core/tokens/m2/mat/_slider.scss +43 -0
- package/core/tokens/m2/mdc/_checkbox.scss +21 -20
- package/core/tokens/m2/mdc/_elevated-card.scss +6 -9
- package/core/tokens/m2/mdc/_extended-fab.scss +8 -17
- package/core/tokens/m2/mdc/_fab.scss +6 -7
- package/core/tokens/m2/mdc/_filled-text-field.scss +17 -23
- package/core/tokens/m2/mdc/_icon-button.scss +1 -1
- package/core/tokens/m2/mdc/_linear-progress.scss +9 -10
- package/core/tokens/m2/mdc/_list.scss +44 -42
- package/core/tokens/m2/mdc/_outlined-card.scss +7 -10
- package/core/tokens/m2/mdc/_outlined-text-field.scss +15 -21
- package/core/tokens/m2/mdc/_radio.scss +11 -11
- package/core/tokens/m2/mdc/_slider.scss +147 -0
- package/core/tokens/m2/mdc/_switch.scss +16 -19
- package/core/typography/_definition.scss +258 -0
- package/core/typography/_property-getters.scss +63 -0
- package/core/typography/_typography-utils.scss +9 -69
- package/core/typography/_typography.scss +10 -343
- package/core/typography/_versioning.scss +86 -0
- package/dialog/_dialog-theme.scss +10 -0
- package/dialog/index.d.ts +44 -86
- package/dialog/testing/index.d.ts +6 -18
- package/esm2022/autocomplete/autocomplete-origin.mjs +9 -17
- package/esm2022/autocomplete/autocomplete-trigger.mjs +32 -41
- package/esm2022/autocomplete/autocomplete.mjs +58 -71
- package/esm2022/autocomplete/testing/autocomplete-harness.mjs +20 -33
- package/esm2022/button/button-base.mjs +32 -27
- package/esm2022/button/button.mjs +6 -6
- package/esm2022/button/fab.mjs +25 -33
- package/esm2022/button/icon-button.mjs +6 -6
- package/esm2022/button/testing/button-harness.mjs +3 -3
- package/esm2022/card/card.mjs +2 -2
- package/esm2022/checkbox/checkbox.mjs +72 -79
- package/esm2022/checkbox/testing/checkbox-harness.mjs +41 -36
- package/esm2022/core/datetime/native-date-adapter.mjs +14 -11
- package/esm2022/core/option/optgroup.mjs +19 -26
- package/esm2022/core/option/option.mjs +25 -35
- package/esm2022/core/version.mjs +1 -1
- package/esm2022/datepicker/calendar.mjs +1 -1
- package/esm2022/datepicker/datepicker-base.mjs +2 -2
- package/esm2022/datepicker/datepicker-toggle.mjs +1 -1
- package/esm2022/dialog/dialog-container.mjs +52 -77
- package/esm2022/dialog/dialog-ref.mjs +1 -1
- package/esm2022/dialog/dialog.mjs +16 -46
- package/esm2022/dialog/public-api.mjs +2 -2
- package/esm2022/dialog/testing/dialog-harness.mjs +13 -16
- package/esm2022/dialog/testing/dialog-opener.mjs +17 -27
- package/esm2022/dialog/testing/index.mjs +2 -2
- package/esm2022/form-field/form-field.mjs +3 -3
- package/esm2022/form-field/testing/error-harness.mjs +10 -12
- package/esm2022/form-field/testing/form-field-harness.mjs +45 -48
- package/esm2022/list/action-list.mjs +2 -2
- package/esm2022/list/list.mjs +2 -2
- package/esm2022/list/nav-list.mjs +2 -2
- package/esm2022/list/selection-list.mjs +2 -2
- package/esm2022/menu/menu-content.mjs +9 -16
- package/esm2022/menu/menu-trigger.mjs +14 -25
- package/esm2022/menu/menu.mjs +15 -29
- package/esm2022/menu/public-api.mjs +3 -3
- package/esm2022/menu/testing/menu-harness.mjs +29 -43
- package/esm2022/paginator/paginator.mjs +24 -38
- package/esm2022/paginator/testing/paginator-harness.mjs +25 -27
- package/esm2022/progress-bar/progress-bar.mjs +2 -2
- package/esm2022/progress-spinner/progress-spinner.mjs +2 -2
- package/esm2022/radio/radio.mjs +58 -83
- package/esm2022/radio/testing/radio-harness.mjs +31 -38
- package/esm2022/select/select.mjs +194 -212
- package/esm2022/select/testing/select-harness.mjs +18 -23
- package/esm2022/slide-toggle/slide-toggle.mjs +43 -53
- package/esm2022/slide-toggle/testing/slide-toggle-harness.mjs +33 -40
- package/esm2022/slider/slider.mjs +2 -2
- package/esm2022/snack-bar/simple-snack-bar.mjs +1 -1
- package/esm2022/snack-bar/snack-bar-container.mjs +17 -32
- package/esm2022/snack-bar/snack-bar-ref.mjs +1 -1
- package/esm2022/snack-bar/snack-bar.mjs +11 -25
- package/esm2022/snack-bar/testing/snack-bar-harness.mjs +18 -31
- package/esm2022/table/table-data-source.mjs +15 -18
- package/esm2022/table/testing/cell-harness.mjs +4 -4
- package/esm2022/table/testing/row-harness.mjs +4 -4
- package/esm2022/table/testing/table-harness.mjs +22 -24
- package/esm2022/tabs/public-api.mjs +7 -8
- package/esm2022/tabs/tab-body.mjs +13 -29
- package/esm2022/tabs/tab-group.mjs +55 -79
- package/esm2022/tabs/tab-header.mjs +13 -34
- package/esm2022/tabs/tab-label-wrapper.mjs +6 -18
- package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +119 -168
- package/esm2022/tabs/tab.mjs +25 -37
- package/esm2022/tooltip/testing/tooltip-harness.mjs +21 -23
- package/esm2022/tooltip/tooltip.mjs +68 -101
- package/fesm2022/autocomplete/testing.mjs +20 -33
- package/fesm2022/autocomplete/testing.mjs.map +1 -1
- package/fesm2022/autocomplete.mjs +96 -126
- package/fesm2022/autocomplete.mjs.map +1 -1
- package/fesm2022/button/testing.mjs +2 -2
- package/fesm2022/button/testing.mjs.map +1 -1
- package/fesm2022/button.mjs +61 -63
- package/fesm2022/button.mjs.map +1 -1
- package/fesm2022/card.mjs +2 -2
- package/fesm2022/card.mjs.map +1 -1
- package/fesm2022/checkbox/testing.mjs +41 -36
- package/fesm2022/checkbox/testing.mjs.map +1 -1
- package/fesm2022/checkbox.mjs +72 -79
- package/fesm2022/checkbox.mjs.map +1 -1
- package/fesm2022/core.mjs +49 -61
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/datepicker.mjs +3 -3
- package/fesm2022/datepicker.mjs.map +1 -1
- package/fesm2022/dialog/testing.mjs +30 -43
- package/fesm2022/dialog/testing.mjs.map +1 -1
- package/fesm2022/dialog.mjs +67 -122
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/form-field/testing.mjs +54 -59
- package/fesm2022/form-field/testing.mjs.map +1 -1
- package/fesm2022/form-field.mjs +2 -2
- package/fesm2022/form-field.mjs.map +1 -1
- package/fesm2022/list.mjs +8 -8
- package/fesm2022/list.mjs.map +1 -1
- package/fesm2022/menu/testing.mjs +30 -44
- package/fesm2022/menu/testing.mjs.map +1 -1
- package/fesm2022/menu.mjs +34 -66
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/paginator/testing.mjs +25 -27
- package/fesm2022/paginator/testing.mjs.map +1 -1
- package/fesm2022/paginator.mjs +24 -38
- package/fesm2022/paginator.mjs.map +1 -1
- package/fesm2022/progress-bar.mjs +2 -2
- package/fesm2022/progress-bar.mjs.map +1 -1
- package/fesm2022/progress-spinner.mjs +2 -2
- package/fesm2022/progress-spinner.mjs.map +1 -1
- package/fesm2022/radio/testing.mjs +31 -38
- package/fesm2022/radio/testing.mjs.map +1 -1
- package/fesm2022/radio.mjs +59 -84
- package/fesm2022/radio.mjs.map +1 -1
- package/fesm2022/select/testing.mjs +18 -23
- package/fesm2022/select/testing.mjs.map +1 -1
- package/fesm2022/select.mjs +196 -214
- package/fesm2022/select.mjs.map +1 -1
- package/fesm2022/slide-toggle/testing.mjs +33 -40
- package/fesm2022/slide-toggle/testing.mjs.map +1 -1
- package/fesm2022/slide-toggle.mjs +43 -53
- package/fesm2022/slide-toggle.mjs.map +1 -1
- package/fesm2022/slider.mjs +2 -2
- package/fesm2022/slider.mjs.map +1 -1
- package/fesm2022/snack-bar/testing.mjs +19 -32
- package/fesm2022/snack-bar/testing.mjs.map +1 -1
- package/fesm2022/snack-bar.mjs +27 -56
- package/fesm2022/snack-bar.mjs.map +1 -1
- package/fesm2022/table/testing.mjs +28 -30
- package/fesm2022/table/testing.mjs.map +1 -1
- package/fesm2022/table.mjs +15 -18
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/tabs.mjs +234 -368
- package/fesm2022/tabs.mjs.map +1 -1
- package/fesm2022/tooltip/testing.mjs +21 -23
- package/fesm2022/tooltip/testing.mjs.map +1 -1
- package/fesm2022/tooltip.mjs +69 -102
- package/fesm2022/tooltip.mjs.map +1 -1
- package/form-field/_form-field-density.scss +3 -4
- package/form-field/_form-field-focus-overlay.scss +13 -18
- package/form-field/_form-field-native-select.scss +30 -67
- package/form-field/_form-field-subscript.scss +4 -8
- package/form-field/_form-field-theme.scss +33 -76
- package/form-field/_mdc-text-field-structure-overrides.scss +20 -0
- package/form-field/testing/index.d.ts +14 -44
- package/input/_input-theme.scss +11 -23
- package/list/_list-theme.scss +34 -40
- package/menu/index.d.ts +22 -44
- package/menu/testing/index.d.ts +6 -23
- package/package.json +7 -286
- package/paginator/_paginator-theme.scss +15 -24
- package/paginator/index.d.ts +6 -22
- package/paginator/testing/index.d.ts +9 -22
- package/prebuilt-themes/deeppurple-amber.css +1 -1
- package/prebuilt-themes/indigo-pink.css +1 -1
- package/prebuilt-themes/pink-bluegrey.css +1 -1
- package/prebuilt-themes/purple-green.css +1 -1
- package/progress-bar/_progress-bar-theme.scss +25 -23
- package/progress-spinner/_progress-spinner-theme.scss +14 -3
- package/radio/_radio-theme.scss +23 -38
- package/radio/index.d.ts +22 -45
- package/radio/testing/index.d.ts +7 -23
- package/schematics/migration.json +4 -4
- package/schematics/ng-add/index.js +2 -2
- package/schematics/ng-add/index.mjs +2 -2
- package/schematics/ng-update/index_bundled.js +4 -4
- package/schematics/ng-update/index_bundled.js.map +1 -1
- package/select/index.d.ts +47 -68
- package/select/testing/index.d.ts +9 -22
- package/slide-toggle/_slide-toggle-theme.scss +23 -40
- package/slide-toggle/index.d.ts +17 -27
- package/slide-toggle/testing/index.d.ts +6 -13
- package/slider/_slider-theme.scss +65 -82
- package/snack-bar/_snack-bar-theme.scss +10 -2
- package/snack-bar/index.d.ts +40 -62
- package/snack-bar/testing/index.d.ts +5 -20
- package/table/index.d.ts +2 -31
- package/table/testing/index.d.ts +17 -34
- package/tabs/index.d.ts +60 -144
- package/tooltip/_tooltip-theme.scss +12 -3
- package/tooltip/index.d.ts +26 -49
- package/tooltip/testing/index.d.ts +7 -17
- package/_theming.scss +0 -43
- package/_token-theming.scss +0 -2
- package/autocomplete/_autocomplete-theme.import.scss +0 -1
- package/badge/_badge-legacy-index.scss +0 -3
- package/badge/_badge-theme.import.scss +0 -11
- package/bottom-sheet/_bottom-sheet-legacy-index.scss +0 -2
- package/bottom-sheet/_bottom-sheet-theme.import.scss +0 -10
- package/button/_button-base.import.scss +0 -4
- package/button/_button-theme.import.scss +0 -13
- package/button-toggle/_button-toggle-legacy-index.scss +0 -2
- package/button-toggle/_button-toggle-theme.import.scss +0 -15
- package/button-toggle/_button-toggle-variables.import.scss +0 -1
- package/button-toggle/_button-toggle-variables.scss +0 -16
- package/card/_card-theme.import.scss +0 -3
- package/checkbox/_checkbox-theme.import.scss +0 -10
- package/chips/_chips-theme.import.scss +0 -4
- package/core/_core-legacy-index.scss +0 -16
- package/core/_core.import.scss +0 -60
- package/core/color/_all-color.import.scss +0 -53
- package/core/color/_color-legacy-index.scss +0 -1
- package/core/density/private/_all-density.import.scss +0 -15
- package/core/density/private/_compatibility.import.scss +0 -4
- package/core/density/private/_density-legacy-index.scss +0 -5
- package/core/focus-indicators/_focus-indicators-legacy-index.scss +0 -5
- package/core/focus-indicators/_focus-indicators.import.scss +0 -23
- package/core/mdc-helpers/_mdc-helpers.import.scss +0 -9
- package/core/option/_optgroup-theme.import.scss +0 -4
- package/core/option/_option-legacy-index.scss +0 -5
- package/core/option/_option-theme.import.scss +0 -4
- package/core/ripple/_ripple-legacy-index.scss +0 -3
- package/core/ripple/_ripple.import.scss +0 -20
- package/core/selection/pseudo-checkbox/_pseudo-checkbox-legacy-index.scss +0 -2
- package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.import.scss +0 -17
- package/core/style/_button-common.import.scss +0 -4
- package/core/style/_checkbox-common.import.scss +0 -11
- package/core/style/_elevation.import.scss +0 -17
- package/core/style/_form-common.import.scss +0 -16
- package/core/style/_layout-common.import.scss +0 -1
- package/core/style/_list-common.import.scss +0 -2
- package/core/style/_menu-common.import.scss +0 -18
- package/core/style/_private.import.scss +0 -15
- package/core/style/_style-legacy-index.scss +0 -24
- package/core/style/_variables.import.scss +0 -8
- package/core/style/_vendor-prefixes.import.scss +0 -1
- package/core/theming/_all-theme.import.scss +0 -86
- package/core/theming/_palette.import.scss +0 -12
- package/core/theming/_theming-legacy-index.scss +0 -22
- package/core/theming/_theming.import.scss +0 -24
- package/core/typography/_all-typography.import.scss +0 -76
- package/core/typography/_typography-legacy-index.scss +0 -18
- package/core/typography/_typography-utils.import.scss +0 -9
- package/core/typography/_typography.import.scss +0 -14
- package/datepicker/_datepicker-legacy-index.scss +0 -9
- package/datepicker/_datepicker-theme.import.scss +0 -17
- package/dialog/_dialog-legacy-padding.import.scss +0 -1
- package/dialog/_dialog-theme.import.scss +0 -1
- package/dialog/_mdc-dialog-structure-overrides.import.scss +0 -1
- package/divider/_divider-legacy-index.scss +0 -3
- package/divider/_divider-offset.import.scss +0 -1
- package/divider/_divider-theme.import.scss +0 -6
- package/esm2022/legacy-autocomplete/autocomplete-module.mjs +0 -51
- package/esm2022/legacy-autocomplete/autocomplete-origin.mjs +0 -28
- package/esm2022/legacy-autocomplete/autocomplete-trigger.mjs +0 -60
- package/esm2022/legacy-autocomplete/autocomplete.mjs +0 -40
- package/esm2022/legacy-autocomplete/index.mjs +0 -9
- package/esm2022/legacy-autocomplete/legacy-autocomplete_public_index.mjs +0 -5
- package/esm2022/legacy-autocomplete/public-api.mjs +0 -48
- package/esm2022/legacy-autocomplete/testing/autocomplete-harness-filters.mjs +0 -9
- package/esm2022/legacy-autocomplete/testing/autocomplete-harness.mjs +0 -39
- package/esm2022/legacy-autocomplete/testing/index.mjs +0 -9
- package/esm2022/legacy-autocomplete/testing/public-api.mjs +0 -9
- package/esm2022/legacy-button/button-module.mjs +0 -29
- package/esm2022/legacy-button/button.mjs +0 -177
- package/esm2022/legacy-button/index.mjs +0 -9
- package/esm2022/legacy-button/legacy-button_public_index.mjs +0 -5
- package/esm2022/legacy-button/public-api.mjs +0 -10
- package/esm2022/legacy-button/testing/button-harness.mjs +0 -82
- package/esm2022/legacy-button/testing/index.mjs +0 -9
- package/esm2022/legacy-button/testing/public-api.mjs +0 -9
- package/esm2022/legacy-card/card-module.mjs +0 -87
- package/esm2022/legacy-card/card.mjs +0 -276
- package/esm2022/legacy-card/index.mjs +0 -9
- package/esm2022/legacy-card/legacy-card_public_index.mjs +0 -5
- package/esm2022/legacy-card/public-api.mjs +0 -10
- package/esm2022/legacy-card/testing/card-harness-filters.mjs +0 -9
- package/esm2022/legacy-card/testing/card-harness.mjs +0 -47
- package/esm2022/legacy-card/testing/index.mjs +0 -9
- package/esm2022/legacy-card/testing/public-api.mjs +0 -9
- package/esm2022/legacy-checkbox/checkbox-module.mjs +0 -31
- package/esm2022/legacy-checkbox/checkbox.mjs +0 -137
- package/esm2022/legacy-checkbox/index.mjs +0 -9
- package/esm2022/legacy-checkbox/legacy-checkbox_public_index.mjs +0 -5
- package/esm2022/legacy-checkbox/public-api.mjs +0 -36
- package/esm2022/legacy-checkbox/testing/checkbox-harness.mjs +0 -46
- package/esm2022/legacy-checkbox/testing/index.mjs +0 -9
- package/esm2022/legacy-checkbox/testing/public-api.mjs +0 -9
- package/esm2022/legacy-chips/chip-default-options.mjs +0 -15
- package/esm2022/legacy-chips/chip-input.mjs +0 -198
- package/esm2022/legacy-chips/chip-list.mjs +0 -718
- package/esm2022/legacy-chips/chip-text-control.mjs +0 -9
- package/esm2022/legacy-chips/chip.mjs +0 -445
- package/esm2022/legacy-chips/chips-module.mjs +0 -68
- package/esm2022/legacy-chips/index.mjs +0 -9
- package/esm2022/legacy-chips/legacy-chips_public_index.mjs +0 -5
- package/esm2022/legacy-chips/public-api.mjs +0 -13
- package/esm2022/legacy-chips/testing/chip-avatar-harness.mjs +0 -26
- package/esm2022/legacy-chips/testing/chip-harness-filters.mjs +0 -2
- package/esm2022/legacy-chips/testing/chip-harness.mjs +0 -95
- package/esm2022/legacy-chips/testing/chip-input-harness.mjs +0 -86
- package/esm2022/legacy-chips/testing/chip-list-harness.mjs +0 -90
- package/esm2022/legacy-chips/testing/chip-listbox-harness.mjs +0 -48
- package/esm2022/legacy-chips/testing/chip-option-harness.mjs +0 -49
- package/esm2022/legacy-chips/testing/chip-remove-harness.mjs +0 -30
- package/esm2022/legacy-chips/testing/index.mjs +0 -9
- package/esm2022/legacy-chips/testing/public-api.mjs +0 -14
- package/esm2022/legacy-core/index.mjs +0 -9
- package/esm2022/legacy-core/legacy-core_public_index.mjs +0 -5
- package/esm2022/legacy-core/option/index.mjs +0 -69
- package/esm2022/legacy-core/option/optgroup.mjs +0 -30
- package/esm2022/legacy-core/option/option.mjs +0 -54
- package/esm2022/legacy-core/public-api.mjs +0 -170
- package/esm2022/legacy-core/testing/index.mjs +0 -9
- package/esm2022/legacy-core/testing/optgroup-harness-filters.mjs +0 -9
- package/esm2022/legacy-core/testing/optgroup-harness.mjs +0 -47
- package/esm2022/legacy-core/testing/option-harness-filters.mjs +0 -9
- package/esm2022/legacy-core/testing/option-harness.mjs +0 -58
- package/esm2022/legacy-core/testing/public-api.mjs +0 -12
- package/esm2022/legacy-dialog/dialog-animations.mjs +0 -17
- package/esm2022/legacy-dialog/dialog-config.mjs +0 -22
- package/esm2022/legacy-dialog/dialog-container.mjs +0 -85
- package/esm2022/legacy-dialog/dialog-content-directives.mjs +0 -209
- package/esm2022/legacy-dialog/dialog-module.mjs +0 -57
- package/esm2022/legacy-dialog/dialog-ref.mjs +0 -16
- package/esm2022/legacy-dialog/dialog.mjs +0 -106
- package/esm2022/legacy-dialog/index.mjs +0 -9
- package/esm2022/legacy-dialog/legacy-dialog_public_index.mjs +0 -5
- package/esm2022/legacy-dialog/public-api.mjs +0 -40
- package/esm2022/legacy-dialog/testing/dialog-harness.mjs +0 -36
- package/esm2022/legacy-dialog/testing/dialog-opener.mjs +0 -56
- package/esm2022/legacy-dialog/testing/index.mjs +0 -9
- package/esm2022/legacy-dialog/testing/public-api.mjs +0 -10
- package/esm2022/legacy-form-field/error.mjs +0 -46
- package/esm2022/legacy-form-field/form-field-module.mjs +0 -67
- package/esm2022/legacy-form-field/form-field.mjs +0 -530
- package/esm2022/legacy-form-field/hint.mjs +0 -56
- package/esm2022/legacy-form-field/index.mjs +0 -9
- package/esm2022/legacy-form-field/label.mjs +0 -25
- package/esm2022/legacy-form-field/legacy-form-field_public_index.mjs +0 -5
- package/esm2022/legacy-form-field/placeholder.mjs +0 -26
- package/esm2022/legacy-form-field/prefix.mjs +0 -27
- package/esm2022/legacy-form-field/public-api.mjs +0 -62
- package/esm2022/legacy-form-field/suffix.mjs +0 -27
- package/esm2022/legacy-form-field/testing/error-harness.mjs +0 -26
- package/esm2022/legacy-form-field/testing/form-field-harness.mjs +0 -73
- package/esm2022/legacy-form-field/testing/index.mjs +0 -9
- package/esm2022/legacy-form-field/testing/public-api.mjs +0 -19
- package/esm2022/legacy-input/index.mjs +0 -9
- package/esm2022/legacy-input/input-module.mjs +0 -45
- package/esm2022/legacy-input/input.mjs +0 -62
- package/esm2022/legacy-input/legacy-input_public_index.mjs +0 -5
- package/esm2022/legacy-input/public-api.mjs +0 -21
- package/esm2022/legacy-input/testing/index.mjs +0 -9
- package/esm2022/legacy-input/testing/public-api.mjs +0 -24
- package/esm2022/legacy-list/index.mjs +0 -9
- package/esm2022/legacy-list/legacy-list_public_index.mjs +0 -5
- package/esm2022/legacy-list/list-module.mjs +0 -75
- package/esm2022/legacy-list/list.mjs +0 -223
- package/esm2022/legacy-list/public-api.mjs +0 -22
- package/esm2022/legacy-list/selection-list.mjs +0 -619
- package/esm2022/legacy-list/testing/action-list-harness.mjs +0 -67
- package/esm2022/legacy-list/testing/index.mjs +0 -9
- package/esm2022/legacy-list/testing/list-harness-base.mjs +0 -97
- package/esm2022/legacy-list/testing/list-harness-filters.mjs +0 -9
- package/esm2022/legacy-list/testing/list-harness.mjs +0 -51
- package/esm2022/legacy-list/testing/list-item-harness-base.mjs +0 -74
- package/esm2022/legacy-list/testing/nav-list-harness.mjs +0 -71
- package/esm2022/legacy-list/testing/public-api.mjs +0 -12
- package/esm2022/legacy-list/testing/selection-list-harness.mjs +0 -129
- package/esm2022/legacy-menu/index.mjs +0 -9
- package/esm2022/legacy-menu/legacy-menu_public_index.mjs +0 -5
- package/esm2022/legacy-menu/menu-content.mjs +0 -27
- package/esm2022/legacy-menu/menu-item.mjs +0 -41
- package/esm2022/legacy-menu/menu-module.mjs +0 -50
- package/esm2022/legacy-menu/menu-trigger.mjs +0 -31
- package/esm2022/legacy-menu/menu.mjs +0 -40
- package/esm2022/legacy-menu/public-api.mjs +0 -49
- package/esm2022/legacy-menu/testing/index.mjs +0 -9
- package/esm2022/legacy-menu/testing/menu-harness.mjs +0 -56
- package/esm2022/legacy-menu/testing/public-api.mjs +0 -9
- package/esm2022/legacy-paginator/index.mjs +0 -9
- package/esm2022/legacy-paginator/legacy-paginator_public_index.mjs +0 -5
- package/esm2022/legacy-paginator/paginator-module.mjs +0 -49
- package/esm2022/legacy-paginator/paginator.mjs +0 -53
- package/esm2022/legacy-paginator/public-api.mjs +0 -36
- package/esm2022/legacy-paginator/testing/index.mjs +0 -9
- package/esm2022/legacy-paginator/testing/paginator-harness.mjs +0 -41
- package/esm2022/legacy-paginator/testing/public-api.mjs +0 -15
- package/esm2022/legacy-progress-bar/index.mjs +0 -9
- package/esm2022/legacy-progress-bar/legacy-progress-bar_public_index.mjs +0 -5
- package/esm2022/legacy-progress-bar/progress-bar-module.mjs +0 -30
- package/esm2022/legacy-progress-bar/progress-bar.mjs +0 -190
- package/esm2022/legacy-progress-bar/public-api.mjs +0 -11
- package/esm2022/legacy-progress-bar/testing/index.mjs +0 -9
- package/esm2022/legacy-progress-bar/testing/progress-bar-harness.mjs +0 -38
- package/esm2022/legacy-progress-bar/testing/public-api.mjs +0 -9
- package/esm2022/legacy-progress-spinner/index.mjs +0 -9
- package/esm2022/legacy-progress-spinner/legacy-progress-spinner_public_index.mjs +0 -5
- package/esm2022/legacy-progress-spinner/progress-spinner-module.mjs +0 -30
- package/esm2022/legacy-progress-spinner/progress-spinner.mjs +0 -286
- package/esm2022/legacy-progress-spinner/public-api.mjs +0 -19
- package/esm2022/legacy-progress-spinner/testing/index.mjs +0 -9
- package/esm2022/legacy-progress-spinner/testing/progress-spinner-harness.mjs +0 -39
- package/esm2022/legacy-progress-spinner/testing/public-api.mjs +0 -9
- package/esm2022/legacy-radio/index.mjs +0 -9
- package/esm2022/legacy-radio/legacy-radio_public_index.mjs +0 -5
- package/esm2022/legacy-radio/public-api.mjs +0 -31
- package/esm2022/legacy-radio/radio-module.mjs +0 -29
- package/esm2022/legacy-radio/radio.mjs +0 -112
- package/esm2022/legacy-radio/testing/index.mjs +0 -9
- package/esm2022/legacy-radio/testing/public-api.mjs +0 -9
- package/esm2022/legacy-radio/testing/radio-harness.mjs +0 -58
- package/esm2022/legacy-select/index.mjs +0 -9
- package/esm2022/legacy-select/legacy-select_public_index.mjs +0 -5
- package/esm2022/legacy-select/public-api.mjs +0 -37
- package/esm2022/legacy-select/select-animations.mjs +0 -56
- package/esm2022/legacy-select/select-errors.mjs +0 -39
- package/esm2022/legacy-select/select-module.mjs +0 -51
- package/esm2022/legacy-select/select.mjs +0 -447
- package/esm2022/legacy-select/testing/index.mjs +0 -9
- package/esm2022/legacy-select/testing/public-api.mjs +0 -9
- package/esm2022/legacy-select/testing/select-harness-filters.mjs +0 -9
- package/esm2022/legacy-select/testing/select-harness.mjs +0 -36
- package/esm2022/legacy-slide-toggle/index.mjs +0 -9
- package/esm2022/legacy-slide-toggle/legacy-slide-toggle_public_index.mjs +0 -5
- package/esm2022/legacy-slide-toggle/public-api.mjs +0 -32
- package/esm2022/legacy-slide-toggle/slide-toggle-config.mjs +0 -18
- package/esm2022/legacy-slide-toggle/slide-toggle-module.mjs +0 -42
- package/esm2022/legacy-slide-toggle/slide-toggle.mjs +0 -137
- package/esm2022/legacy-slide-toggle/testing/index.mjs +0 -9
- package/esm2022/legacy-slide-toggle/testing/public-api.mjs +0 -15
- package/esm2022/legacy-slide-toggle/testing/slide-toggle-harness.mjs +0 -50
- package/esm2022/legacy-slider/index.mjs +0 -9
- package/esm2022/legacy-slider/legacy-slider_public_index.mjs +0 -5
- package/esm2022/legacy-slider/public-api.mjs +0 -10
- package/esm2022/legacy-slider/slider-module.mjs +0 -30
- package/esm2022/legacy-slider/slider.mjs +0 -847
- package/esm2022/legacy-slider/testing/index.mjs +0 -9
- package/esm2022/legacy-slider/testing/public-api.mjs +0 -9
- package/esm2022/legacy-slider/testing/slider-harness-filters.mjs +0 -2
- package/esm2022/legacy-slider/testing/slider-harness.mjs +0 -122
- package/esm2022/legacy-snack-bar/index.mjs +0 -9
- package/esm2022/legacy-snack-bar/legacy-snack-bar_public_index.mjs +0 -5
- package/esm2022/legacy-snack-bar/public-api.mjs +0 -53
- package/esm2022/legacy-snack-bar/simple-snack-bar.mjs +0 -45
- package/esm2022/legacy-snack-bar/snack-bar-container.mjs +0 -39
- package/esm2022/legacy-snack-bar/snack-bar-module.mjs +0 -34
- package/esm2022/legacy-snack-bar/snack-bar.mjs +0 -47
- package/esm2022/legacy-snack-bar/testing/index.mjs +0 -9
- package/esm2022/legacy-snack-bar/testing/public-api.mjs +0 -9
- package/esm2022/legacy-snack-bar/testing/snack-bar-harness.mjs +0 -46
- package/esm2022/legacy-table/cell.mjs +0 -163
- package/esm2022/legacy-table/index.mjs +0 -9
- package/esm2022/legacy-table/legacy-table_public_index.mjs +0 -5
- package/esm2022/legacy-table/public-api.mjs +0 -20
- package/esm2022/legacy-table/row.mjs +0 -165
- package/esm2022/legacy-table/table-data-source.mjs +0 -27
- package/esm2022/legacy-table/table-module.mjs +0 -98
- package/esm2022/legacy-table/table.mjs +0 -72
- package/esm2022/legacy-table/testing/cell-harness.mjs +0 -62
- package/esm2022/legacy-table/testing/index.mjs +0 -9
- package/esm2022/legacy-table/testing/public-api.mjs +0 -27
- package/esm2022/legacy-table/testing/row-harness.mjs +0 -76
- package/esm2022/legacy-table/testing/table-harness.mjs +0 -34
- package/esm2022/legacy-table/text-column.mjs +0 -65
- package/esm2022/legacy-tabs/index.mjs +0 -9
- package/esm2022/legacy-tabs/ink-bar.mjs +0 -73
- package/esm2022/legacy-tabs/legacy-tabs_public_index.mjs +0 -5
- package/esm2022/legacy-tabs/public-api.mjs +0 -94
- package/esm2022/legacy-tabs/tab-body.mjs +0 -64
- package/esm2022/legacy-tabs/tab-content.mjs +0 -27
- package/esm2022/legacy-tabs/tab-group.mjs +0 -72
- package/esm2022/legacy-tabs/tab-header.mjs +0 -75
- package/esm2022/legacy-tabs/tab-label-wrapper.mjs +0 -30
- package/esm2022/legacy-tabs/tab-label.mjs +0 -27
- package/esm2022/legacy-tabs/tab-nav-bar/index.mjs +0 -9
- package/esm2022/legacy-tabs/tab-nav-bar/tab-nav-bar.mjs +0 -164
- package/esm2022/legacy-tabs/tab.mjs +0 -46
- package/esm2022/legacy-tabs/tabs-module.mjs +0 -99
- package/esm2022/legacy-tabs/testing/index.mjs +0 -9
- package/esm2022/legacy-tabs/testing/public-api.mjs +0 -12
- package/esm2022/legacy-tabs/testing/tab-group-harness.mjs +0 -61
- package/esm2022/legacy-tabs/testing/tab-harness-filters.mjs +0 -2
- package/esm2022/legacy-tabs/testing/tab-harness.mjs +0 -71
- package/esm2022/legacy-tabs/testing/tab-link-harness.mjs +0 -45
- package/esm2022/legacy-tabs/testing/tab-nav-bar-harness.mjs +0 -70
- package/esm2022/legacy-tabs/testing/tab-nav-panel-harness.mjs +0 -31
- package/esm2022/legacy-tooltip/index.mjs +0 -9
- package/esm2022/legacy-tooltip/legacy-tooltip_public_index.mjs +0 -5
- package/esm2022/legacy-tooltip/public-api.mjs +0 -47
- package/esm2022/legacy-tooltip/testing/index.mjs +0 -9
- package/esm2022/legacy-tooltip/testing/public-api.mjs +0 -9
- package/esm2022/legacy-tooltip/testing/tooltip-harness.mjs +0 -35
- package/esm2022/legacy-tooltip/tooltip-animations.mjs +0 -28
- package/esm2022/legacy-tooltip/tooltip-module.mjs +0 -35
- package/esm2022/legacy-tooltip/tooltip.mjs +0 -108
- package/expansion/_expansion-legacy-index.scss +0 -2
- package/expansion/_expansion-theme.import.scss +0 -12
- package/expansion/_expansion-variables.import.scss +0 -1
- package/fesm2022/legacy-autocomplete/testing.mjs +0 -35
- package/fesm2022/legacy-autocomplete/testing.mjs.map +0 -1
- package/fesm2022/legacy-autocomplete.mjs +0 -146
- package/fesm2022/legacy-autocomplete.mjs.map +0 -1
- package/fesm2022/legacy-button/testing.mjs +0 -78
- package/fesm2022/legacy-button/testing.mjs.map +0 -1
- package/fesm2022/legacy-button.mjs +0 -194
- package/fesm2022/legacy-button.mjs.map +0 -1
- package/fesm2022/legacy-card/testing.mjs +0 -43
- package/fesm2022/legacy-card/testing.mjs.map +0 -1
- package/fesm2022/legacy-card.mjs +0 -353
- package/fesm2022/legacy-card.mjs.map +0 -1
- package/fesm2022/legacy-checkbox/testing.mjs +0 -42
- package/fesm2022/legacy-checkbox/testing.mjs.map +0 -1
- package/fesm2022/legacy-checkbox.mjs +0 -157
- package/fesm2022/legacy-checkbox.mjs.map +0 -1
- package/fesm2022/legacy-chips/testing.mjs +0 -365
- package/fesm2022/legacy-chips/testing.mjs.map +0 -1
- package/fesm2022/legacy-chips.mjs +0 -1399
- package/fesm2022/legacy-chips.mjs.map +0 -1
- package/fesm2022/legacy-core/testing.mjs +0 -92
- package/fesm2022/legacy-core/testing.mjs.map +0 -1
- package/fesm2022/legacy-core.mjs +0 -92
- package/fesm2022/legacy-core.mjs.map +0 -1
- package/fesm2022/legacy-dialog/testing.mjs +0 -80
- package/fesm2022/legacy-dialog/testing.mjs.map +0 -1
- package/fesm2022/legacy-dialog.mjs +0 -449
- package/fesm2022/legacy-dialog.mjs.map +0 -1
- package/fesm2022/legacy-form-field/testing.mjs +0 -87
- package/fesm2022/legacy-form-field/testing.mjs.map +0 -1
- package/fesm2022/legacy-form-field.mjs +0 -726
- package/fesm2022/legacy-form-field.mjs.map +0 -1
- package/fesm2022/legacy-input/testing.mjs +0 -2
- package/fesm2022/legacy-input/testing.mjs.map +0 -1
- package/fesm2022/legacy-input.mjs +0 -97
- package/fesm2022/legacy-input.mjs.map +0 -1
- package/fesm2022/legacy-list/testing.mjs +0 -436
- package/fesm2022/legacy-list/testing.mjs.map +0 -1
- package/fesm2022/legacy-list.mjs +0 -891
- package/fesm2022/legacy-list.mjs.map +0 -1
- package/fesm2022/legacy-menu/testing.mjs +0 -52
- package/fesm2022/legacy-menu/testing.mjs.map +0 -1
- package/fesm2022/legacy-menu.mjs +0 -145
- package/fesm2022/legacy-menu.mjs.map +0 -1
- package/fesm2022/legacy-paginator/testing.mjs +0 -38
- package/fesm2022/legacy-paginator/testing.mjs.map +0 -1
- package/fesm2022/legacy-paginator.mjs +0 -92
- package/fesm2022/legacy-paginator.mjs.map +0 -1
- package/fesm2022/legacy-progress-bar/testing.mjs +0 -34
- package/fesm2022/legacy-progress-bar/testing.mjs.map +0 -1
- package/fesm2022/legacy-progress-bar.mjs +0 -210
- package/fesm2022/legacy-progress-bar.mjs.map +0 -1
- package/fesm2022/legacy-progress-spinner/testing.mjs +0 -35
- package/fesm2022/legacy-progress-spinner/testing.mjs.map +0 -1
- package/fesm2022/legacy-progress-spinner.mjs +0 -312
- package/fesm2022/legacy-progress-spinner.mjs.map +0 -1
- package/fesm2022/legacy-radio/testing.mjs +0 -54
- package/fesm2022/legacy-radio/testing.mjs.map +0 -1
- package/fesm2022/legacy-radio.mjs +0 -130
- package/fesm2022/legacy-radio.mjs.map +0 -1
- package/fesm2022/legacy-select/testing.mjs +0 -32
- package/fesm2022/legacy-select/testing.mjs.map +0 -1
- package/fesm2022/legacy-select.mjs +0 -541
- package/fesm2022/legacy-select.mjs.map +0 -1
- package/fesm2022/legacy-slide-toggle/testing.mjs +0 -47
- package/fesm2022/legacy-slide-toggle/testing.mjs.map +0 -1
- package/fesm2022/legacy-slide-toggle.mjs +0 -177
- package/fesm2022/legacy-slide-toggle.mjs.map +0 -1
- package/fesm2022/legacy-slider/testing.mjs +0 -118
- package/fesm2022/legacy-slider/testing.mjs.map +0 -1
- package/fesm2022/legacy-slider.mjs +0 -863
- package/fesm2022/legacy-slider.mjs.map +0 -1
- package/fesm2022/legacy-snack-bar/testing.mjs +0 -42
- package/fesm2022/legacy-snack-bar/testing.mjs.map +0 -1
- package/fesm2022/legacy-snack-bar.mjs +0 -128
- package/fesm2022/legacy-snack-bar.mjs.map +0 -1
- package/fesm2022/legacy-table/testing.mjs +0 -150
- package/fesm2022/legacy-table/testing.mjs.map +0 -1
- package/fesm2022/legacy-table.mjs +0 -538
- package/fesm2022/legacy-table.mjs.map +0 -1
- package/fesm2022/legacy-tabs/testing.mjs +0 -239
- package/fesm2022/legacy-tabs/testing.mjs.map +0 -1
- package/fesm2022/legacy-tabs.mjs +0 -549
- package/fesm2022/legacy-tabs.mjs.map +0 -1
- package/fesm2022/legacy-tooltip/testing.mjs +0 -31
- package/fesm2022/legacy-tooltip/testing.mjs.map +0 -1
- package/fesm2022/legacy-tooltip.mjs +0 -148
- package/fesm2022/legacy-tooltip.mjs.map +0 -1
- package/form-field/_form-field-theme.import.scss +0 -29
- package/form-field/_mdc-text-field-theme-variable-refresh.scss +0 -88
- package/grid-list/_grid-list-legacy-index.scss +0 -2
- package/grid-list/_grid-list-theme.import.scss +0 -10
- package/icon/_icon-legacy-index.scss +0 -2
- package/icon/_icon-theme.import.scss +0 -5
- package/input/_input-theme.import.scss +0 -1
- package/legacy-autocomplete/_autocomplete-legacy-index.scss +0 -2
- package/legacy-autocomplete/_autocomplete-theme.import.scss +0 -7
- package/legacy-autocomplete/_autocomplete-theme.scss +0 -57
- package/legacy-autocomplete/index.d.ts +0 -115
- package/legacy-autocomplete/testing/index.d.ts +0 -41
- package/legacy-button/_button-base.import.scss +0 -21
- package/legacy-button/_button-base.scss +0 -114
- package/legacy-button/_button-legacy-index.scss +0 -22
- package/legacy-button/_button-theme.import.scss +0 -11
- package/legacy-button/_button-theme.scss +0 -223
- package/legacy-button/index.d.ts +0 -87
- package/legacy-button/testing/index.d.ts +0 -49
- package/legacy-card/_card-legacy-index.scss +0 -2
- package/legacy-card/_card-theme.import.scss +0 -10
- package/legacy-card/_card-theme.scss +0 -78
- package/legacy-card/index.d.ts +0 -201
- package/legacy-card/testing/index.d.ts +0 -56
- package/legacy-checkbox/_checkbox-legacy-index.scss +0 -2
- package/legacy-checkbox/_checkbox-theme.import.scss +0 -7
- package/legacy-checkbox/_checkbox-theme.scss +0 -138
- package/legacy-checkbox/index.d.ts +0 -116
- package/legacy-checkbox/testing/index.d.ts +0 -30
- package/legacy-chips/_chips-legacy-index.scss +0 -7
- package/legacy-chips/_chips-theme.import.scss +0 -14
- package/legacy-chips/_chips-theme.scss +0 -133
- package/legacy-chips/index.d.ts +0 -705
- package/legacy-chips/testing/index.d.ts +0 -316
- package/legacy-core/_core-theme.scss +0 -65
- package/legacy-core/_core.import.scss +0 -5
- package/legacy-core/_core.scss +0 -18
- package/legacy-core/color/_all-color.import.scss +0 -4
- package/legacy-core/color/_all-color.scss +0 -28
- package/legacy-core/density/private/_all-density.import.scss +0 -3
- package/legacy-core/density/private/_all-density.scss +0 -46
- package/legacy-core/density/private/_compatibility.import.scss +0 -4
- package/legacy-core/density/private/_compatibility.scss +0 -74
- package/legacy-core/index.d.ts +0 -218
- package/legacy-core/option/_optgroup-theme.import.scss +0 -27
- package/legacy-core/option/_optgroup-theme.scss +0 -52
- package/legacy-core/option/_option-legacy-index.scss +0 -5
- package/legacy-core/option/_option-theme.import.scss +0 -27
- package/legacy-core/option/_option-theme.scss +0 -86
- package/legacy-core/testing/index.d.ts +0 -80
- package/legacy-core/theming/_all-theme.import.scss +0 -3
- package/legacy-core/theming/_all-theme.scss +0 -89
- package/legacy-core/typography/_all-typography.import.scss +0 -4
- package/legacy-core/typography/_all-typography.scss +0 -105
- package/legacy-dialog/_dialog-legacy-index.scss +0 -2
- package/legacy-dialog/_dialog-theme.import.scss +0 -10
- package/legacy-dialog/_dialog-theme.scss +0 -53
- package/legacy-dialog/index.d.ts +0 -271
- package/legacy-dialog/testing/index.d.ts +0 -63
- package/legacy-form-field/_form-field-fill-theme.import.scss +0 -13
- package/legacy-form-field/_form-field-fill-theme.scss +0 -136
- package/legacy-form-field/_form-field-legacy-index.scss +0 -29
- package/legacy-form-field/_form-field-legacy-theme.import.scss +0 -14
- package/legacy-form-field/_form-field-legacy-theme.scss +0 -204
- package/legacy-form-field/_form-field-outline-theme.import.scss +0 -13
- package/legacy-form-field/_form-field-outline-theme.scss +0 -167
- package/legacy-form-field/_form-field-standard-theme.import.scss +0 -11
- package/legacy-form-field/_form-field-standard-theme.scss +0 -55
- package/legacy-form-field/_form-field-theme.import.scss +0 -29
- package/legacy-form-field/_form-field-theme.scss +0 -278
- package/legacy-form-field/index.d.ts +0 -370
- package/legacy-form-field/testing/index.d.ts +0 -76
- package/legacy-input/_input-legacy-index.scss +0 -2
- package/legacy-input/_input-theme.import.scss +0 -11
- package/legacy-input/_input-theme.scss +0 -115
- package/legacy-input/index.d.ts +0 -41
- package/legacy-input/testing/index.d.ts +0 -20
- package/legacy-list/_list-legacy-index.scss +0 -2
- package/legacy-list/_list-theme.import.scss +0 -10
- package/legacy-list/_list-theme.scss +0 -124
- package/legacy-list/index.d.ts +0 -396
- package/legacy-list/testing/index.d.ts +0 -419
- package/legacy-menu/_menu-legacy-index.scss +0 -2
- package/legacy-menu/_menu-theme.import.scss +0 -10
- package/legacy-menu/_menu-theme.scss +0 -84
- package/legacy-menu/index.d.ts +0 -127
- package/legacy-menu/testing/index.d.ts +0 -47
- package/legacy-paginator/_paginator-legacy-index.scss +0 -2
- package/legacy-paginator/_paginator-theme.import.scss +0 -11
- package/legacy-paginator/_paginator-theme.scss +0 -92
- package/legacy-paginator/_paginator-variables.import.scss +0 -1
- package/legacy-paginator/_paginator-variables.scss +0 -13
- package/legacy-paginator/index.d.ts +0 -87
- package/legacy-paginator/testing/index.d.ts +0 -36
- package/legacy-prebuilt-themes/legacy-deeppurple-amber.css +0 -1
- package/legacy-prebuilt-themes/legacy-indigo-pink.css +0 -1
- package/legacy-prebuilt-themes/legacy-pink-bluegrey.css +0 -1
- package/legacy-prebuilt-themes/legacy-purple-green.css +0 -1
- package/legacy-progress-bar/_progress-bar-legacy-index.scss +0 -2
- package/legacy-progress-bar/_progress-bar-theme.import.scss +0 -6
- package/legacy-progress-bar/_progress-bar-theme.scss +0 -93
- package/legacy-progress-bar/index.d.ts +0 -131
- package/legacy-progress-bar/testing/index.d.ts +0 -28
- package/legacy-progress-spinner/_progress-spinner-legacy-index.scss +0 -3
- package/legacy-progress-spinner/_progress-spinner-theme.import.scss +0 -7
- package/legacy-progress-spinner/_progress-spinner-theme.scss +0 -52
- package/legacy-progress-spinner/index.d.ts +0 -129
- package/legacy-progress-spinner/testing/index.d.ts +0 -29
- package/legacy-radio/_radio-legacy-index.scss +0 -2
- package/legacy-radio/_radio-theme.import.scss +0 -8
- package/legacy-radio/_radio-theme.scss +0 -104
- package/legacy-radio/index.d.ts +0 -75
- package/legacy-radio/testing/index.d.ts +0 -50
- package/legacy-select/_select-legacy-index.scss +0 -2
- package/legacy-select/_select-theme.import.scss +0 -11
- package/legacy-select/_select-theme.scss +0 -107
- package/legacy-select/index.d.ts +0 -230
- package/legacy-select/testing/index.d.ts +0 -38
- package/legacy-slide-toggle/_slide-toggle-legacy-index.scss +0 -3
- package/legacy-slide-toggle/_slide-toggle-theme.import.scss +0 -11
- package/legacy-slide-toggle/_slide-toggle-theme.scss +0 -111
- package/legacy-slide-toggle/index.d.ts +0 -113
- package/legacy-slide-toggle/testing/index.d.ts +0 -34
- package/legacy-slider/_slider-legacy-index.scss +0 -3
- package/legacy-slider/_slider-theme.import.scss +0 -8
- package/legacy-slider/_slider-theme.scss +0 -210
- package/legacy-slider/index.d.ts +0 -303
- package/legacy-slider/testing/index.d.ts +0 -68
- package/legacy-snack-bar/_snack-bar-legacy-index.scss +0 -2
- package/legacy-snack-bar/_snack-bar-theme.import.scss +0 -11
- package/legacy-snack-bar/_snack-bar-theme.scss +0 -72
- package/legacy-snack-bar/index.d.ts +0 -118
- package/legacy-snack-bar/testing/index.d.ts +0 -28
- package/legacy-table/_table-legacy-index.scss +0 -3
- package/legacy-table/_table-theme.import.scss +0 -8
- package/legacy-table/_table-theme.scss +0 -78
- package/legacy-table/index.d.ts +0 -298
- package/legacy-table/testing/index.d.ts +0 -149
- package/legacy-tabs/_tabs-common.import.scss +0 -11
- package/legacy-tabs/_tabs-common.scss +0 -173
- package/legacy-tabs/_tabs-legacy-index.scss +0 -6
- package/legacy-tabs/_tabs-theme.import.scss +0 -9
- package/legacy-tabs/_tabs-theme.scss +0 -188
- package/legacy-tabs/index.d.ts +0 -338
- package/legacy-tabs/testing/index.d.ts +0 -195
- package/legacy-tooltip/_tooltip-legacy-index.scss +0 -3
- package/legacy-tooltip/_tooltip-theme.import.scss +0 -9
- package/legacy-tooltip/_tooltip-theme.scss +0 -67
- package/legacy-tooltip/index.d.ts +0 -117
- package/legacy-tooltip/testing/index.d.ts +0 -30
- package/list/_list-theme.import.scss +0 -1
- package/menu/_menu-theme.import.scss +0 -2
- package/paginator/_paginator-theme.import.scss +0 -6
- package/paginator/_paginator-variables.import.scss +0 -1
- package/paginator/_paginator-variables.scss +0 -15
- package/progress-bar/_progress-bar-theme.import.scss +0 -3
- package/progress-spinner/_progress-spinner-theme.import.scss +0 -3
- package/radio/_radio-theme.import.scss +0 -4
- package/select/_select-theme.import.scss +0 -7
- package/sidenav/_sidenav-legacy-index.scss +0 -2
- package/sidenav/_sidenav-theme.import.scss +0 -8
- package/slide-toggle/_slide-toggle-theme.import.scss +0 -7
- package/slider/_slider-theme.import.scss +0 -2
- package/snack-bar/_snack-bar-theme.import.scss +0 -5
- package/sort/_sort-legacy-index.scss +0 -2
- package/sort/_sort-theme.import.scss +0 -5
- package/stepper/_stepper-legacy-index.scss +0 -7
- package/stepper/_stepper-theme.import.scss +0 -16
- package/stepper/_stepper-variables.import.scss +0 -6
- package/table/_table-flex-styles.import.scss +0 -1
- package/table/_table-theme.import.scss +0 -8
- package/tabs/_tabs-common.import.scss +0 -11
- package/tabs/_tabs-theme.import.scss +0 -5
- package/toolbar/_toolbar-legacy-index.scss +0 -4
- package/toolbar/_toolbar-theme.import.scss +0 -14
- package/toolbar/_toolbar-variables.import.scss +0 -1
- package/tooltip/_tooltip-theme.import.scss +0 -2
- package/tree/_tree-legacy-index.scss +0 -2
- package/tree/_tree-theme.import.scss +0 -9
- package/tree/_tree-variables.import.scss +0 -1
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
@use 'sass:list';
|
|
2
|
+
@use 'sass:map';
|
|
3
|
+
@use 'sass:meta';
|
|
4
|
+
@use './theming';
|
|
5
|
+
@use '../typography/property-getters' as typography-getters;
|
|
6
|
+
@use '../typography/versioning' as typography-versioning;
|
|
7
|
+
|
|
8
|
+
/// Key used to access the Angular Material theme internals.
|
|
9
|
+
$_internals: _mat-theming-internals-do-not-access;
|
|
10
|
+
|
|
11
|
+
/// Keys that indicate a config object is a color config.
|
|
12
|
+
$_color-keys: (
|
|
13
|
+
primary,
|
|
14
|
+
accent,
|
|
15
|
+
warn,
|
|
16
|
+
foreground,
|
|
17
|
+
background,
|
|
18
|
+
is-dark,
|
|
19
|
+
color, /* included for themes that incorrectly nest the color config: (color: (color: (....))) */
|
|
20
|
+
);
|
|
21
|
+
|
|
22
|
+
/// Keys that indicate a config object is a typography config.
|
|
23
|
+
$_typography-keys: (
|
|
24
|
+
headline-1,
|
|
25
|
+
headline-2,
|
|
26
|
+
headline-3,
|
|
27
|
+
headline-4,
|
|
28
|
+
headline-5,
|
|
29
|
+
headline-6,
|
|
30
|
+
subtitle-1,
|
|
31
|
+
font-famiy,
|
|
32
|
+
subtitle-2,
|
|
33
|
+
body-1,
|
|
34
|
+
body-2,
|
|
35
|
+
button,
|
|
36
|
+
caption,
|
|
37
|
+
overline,
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
/// The CSS typography properties supported by the inspection API.
|
|
41
|
+
$_typography-properties: (font, font-family, line-height, font-size, letter-spacing, font-weight);
|
|
42
|
+
|
|
43
|
+
/// Gets the m2-config from the theme.
|
|
44
|
+
@function _get-m2-config($theme) {
|
|
45
|
+
// It is possible for a user to pass a "density theme" that is just a number.
|
|
46
|
+
@if meta.type-of($theme) != 'map' {
|
|
47
|
+
@return $theme;
|
|
48
|
+
}
|
|
49
|
+
$internal: map.get($theme, $_internals, m2-config);
|
|
50
|
+
$theme: map.remove($theme, $_internals);
|
|
51
|
+
@return if(_is-error-theme($theme), $internal, $theme);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/// Checks whether the given theme contains error values.
|
|
55
|
+
/// @param {*} $theme The theme to check.
|
|
56
|
+
/// @return {Boolean} true if the theme contains error values, else false.
|
|
57
|
+
@function _is-error-theme($theme) {
|
|
58
|
+
@if meta.type-of($theme) != 'map' {
|
|
59
|
+
@return false;
|
|
60
|
+
}
|
|
61
|
+
@if map.get($theme, ERROR) {
|
|
62
|
+
@return true;
|
|
63
|
+
}
|
|
64
|
+
@return _is-error-theme(list.nth(map.values($theme), 1));
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/// Checks whether the given theme object has any of the given keys.
|
|
68
|
+
/// @param {Map} $theme The theme to check
|
|
69
|
+
/// @param {List} $keys The keys to check for
|
|
70
|
+
/// @return {Boolean} Whether the theme has any of the given keys.
|
|
71
|
+
@function _has-any-key($theme, $keys) {
|
|
72
|
+
@each $key in $keys {
|
|
73
|
+
@if map.has-key($theme, $key) {
|
|
74
|
+
@return true;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
@return false;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/// Checks whether the given theme is a density scale value.
|
|
81
|
+
/// @param {*} $theme The theme to check.
|
|
82
|
+
/// @return {Boolean} true if the theme is a density scale value, else false.
|
|
83
|
+
@function _is-density-value($theme) {
|
|
84
|
+
@return $theme == minimum or $theme == maximum or meta.type-of($theme) == 'number';
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/// Gets the type of theme represented by a theme object (light or dark).
|
|
88
|
+
/// @param {Map} $theme The theme
|
|
89
|
+
/// @return {String} The type of theme (either `light` or `dark`).
|
|
90
|
+
@function get-theme-type($theme) {
|
|
91
|
+
$theme: _get-m2-config($theme);
|
|
92
|
+
@if not theme-has($theme, color) {
|
|
93
|
+
@error 'Color information is not available on this theme.';
|
|
94
|
+
}
|
|
95
|
+
$colors: theming.get-color-config($theme);
|
|
96
|
+
// Some apps seem to have mistakenly created nested color themes that somehow work with our old
|
|
97
|
+
// theme normalization logic. This check allows those apps to keep working.
|
|
98
|
+
@if theme-has($colors, color) {
|
|
99
|
+
$colors: theming.get-color-config($colors);
|
|
100
|
+
}
|
|
101
|
+
@return if(map.get($colors, is-dark), dark, light);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/// Gets a color from a theme object. This function can take 2 or 3 arguments. If 2 arguments are
|
|
105
|
+
/// passed, the second argument is treated as the name of a color role. If 3 arguments are passed,
|
|
106
|
+
/// the second argument is treated as the name of a color palette (primary, secondary, etc.) and the
|
|
107
|
+
/// third is treated as the palette hue (10, 50, etc.)
|
|
108
|
+
/// @param {Map} $theme The theme
|
|
109
|
+
/// @param {String} $palette-name The name of a color palette.
|
|
110
|
+
/// @param {Number} $hue The palette hue to get (passing this argument means the second argument is
|
|
111
|
+
/// interpreted as a palette name).
|
|
112
|
+
/// @return {Color} The requested theme color.
|
|
113
|
+
@function get-theme-color($theme, $palette-name, $args...) {
|
|
114
|
+
$theme: _get-m2-config($theme);
|
|
115
|
+
@if not theme-has($theme, color) {
|
|
116
|
+
@error 'Color information is not available on this theme.';
|
|
117
|
+
}
|
|
118
|
+
$colors: theming.get-color-config($theme);
|
|
119
|
+
// Some apps seem to have mistakenly created nested color themes that somehow work with our old
|
|
120
|
+
// theme normalization logic. This check allows those apps to keep working.
|
|
121
|
+
@if theme-has($colors, color) {
|
|
122
|
+
$colors: theming.get-color-config($colors);
|
|
123
|
+
}
|
|
124
|
+
$palette: map.get($colors, $palette-name);
|
|
125
|
+
@if not $palette {
|
|
126
|
+
@error 'Unrecognized palette name:' $palette-name;
|
|
127
|
+
}
|
|
128
|
+
@return theming.get-color-from-palette($palette, $args...);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/// Gets a typography value from a theme object.
|
|
132
|
+
/// @param {Map} $theme The theme
|
|
133
|
+
/// @param {String} $typescale The typescale name.
|
|
134
|
+
/// @param {String} $property The CSS font property to get
|
|
135
|
+
/// (font, font-family, font-size, font-weight, line-height, or letter-spacing).
|
|
136
|
+
/// @return {*} The value of the requested font property.
|
|
137
|
+
@function get-theme-typography($theme, $typescale, $property) {
|
|
138
|
+
$theme: _get-m2-config($theme);
|
|
139
|
+
@if not theme-has($theme, typography) {
|
|
140
|
+
@error 'Typography information is not available on this theme.';
|
|
141
|
+
}
|
|
142
|
+
$typography: typography-versioning.private-typography-to-2018-config(
|
|
143
|
+
theming.get-typography-config($theme));
|
|
144
|
+
@if $property == font {
|
|
145
|
+
$font-weight: typography-getters.font-weight($typography, $typescale);
|
|
146
|
+
$font-size: typography-getters.font-size($typography, $typescale);
|
|
147
|
+
$line-height: typography-getters.line-height($typography, $typescale);
|
|
148
|
+
$font-family: typography-getters.font-family($typography, $typescale);
|
|
149
|
+
@return ($font-weight list.slash($font-size, $line-height) $font-family);
|
|
150
|
+
}
|
|
151
|
+
@else if $property == font-family {
|
|
152
|
+
$result: typography-getters.font-family($typography, $typescale);
|
|
153
|
+
@return $result or typography-getters.font-family($typography);
|
|
154
|
+
}
|
|
155
|
+
@else if $property == font-size {
|
|
156
|
+
@return typography-getters.font-size($typography, $typescale);
|
|
157
|
+
}
|
|
158
|
+
@else if $property == font-weight {
|
|
159
|
+
@return typography-getters.font-weight($typography, $typescale);
|
|
160
|
+
}
|
|
161
|
+
@else if $property == line-height {
|
|
162
|
+
@return typography-getters.line-height($typography, $typescale);
|
|
163
|
+
}
|
|
164
|
+
@else if $property == letter-spacing {
|
|
165
|
+
@return typography-getters.letter-spacing($typography, $typescale);
|
|
166
|
+
}
|
|
167
|
+
@else {
|
|
168
|
+
@error #{'Valid typography properties are: #{$_typography-properties}. Got:'} $property;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/// Gets the density scale from a theme object.
|
|
173
|
+
/// @param {Map} $theme The theme
|
|
174
|
+
/// @return {Number} The density scale.
|
|
175
|
+
@function get-theme-density($theme) {
|
|
176
|
+
$theme: _get-m2-config($theme);
|
|
177
|
+
@if not theme-has($theme, density) {
|
|
178
|
+
@error 'Density information is not available on this theme.';
|
|
179
|
+
}
|
|
180
|
+
$scale: theming.get-density-config($theme);
|
|
181
|
+
@return theming.clamp-density($scale, -5);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
/// Checks whether the theme has information about given theming system.
|
|
185
|
+
/// @param {Map} $theme The theme
|
|
186
|
+
/// @param {String} $system The system to check
|
|
187
|
+
/// @param {Boolean} Whether the theme has information about the system.
|
|
188
|
+
@function theme-has($theme, $system) {
|
|
189
|
+
$theme: _get-m2-config($theme);
|
|
190
|
+
@if $system == base {
|
|
191
|
+
@return true;
|
|
192
|
+
}
|
|
193
|
+
@if $system == color {
|
|
194
|
+
$color: theming.get-color-config($theme);
|
|
195
|
+
@return $color != null and _has-any-key($color, $_color-keys);
|
|
196
|
+
}
|
|
197
|
+
@if $system == typography {
|
|
198
|
+
$typography: theming.get-typography-config($theme);
|
|
199
|
+
@return $typography != null and _has-any-key($typography, $_typography-keys);
|
|
200
|
+
}
|
|
201
|
+
@if $system == density {
|
|
202
|
+
// Backwards compatibility for the case where an explicit, but invalid density is given
|
|
203
|
+
// (this was previously treated as density 0).
|
|
204
|
+
@if meta.type-of($theme) == 'map' and map.get($theme, density) {
|
|
205
|
+
@return true;
|
|
206
|
+
}
|
|
207
|
+
$density: theming.get-density-config($theme);
|
|
208
|
+
@return $density != null and _is-density-value($density);
|
|
209
|
+
}
|
|
210
|
+
@error 'Valid systems are: base, color, typography, density. Got:' $system;
|
|
211
|
+
}
|
|
@@ -5,6 +5,9 @@
|
|
|
5
5
|
@use 'palette';
|
|
6
6
|
@use '../density/private/compatibility';
|
|
7
7
|
|
|
8
|
+
// Whether to enable compatibility with legacy methods for accessing theme information.
|
|
9
|
+
$theme-legacy-inspection-api-compatibility: true !default;
|
|
10
|
+
|
|
8
11
|
// Whether duplication warnings should be disabled. Warnings enabled by default.
|
|
9
12
|
$theme-ignore-duplication-warnings: false !default;
|
|
10
13
|
|
|
@@ -35,6 +38,7 @@ $_disable-color-backwards-compatibility: false;
|
|
|
35
38
|
$_emitted-color: () !default;
|
|
36
39
|
$_emitted-typography: () !default;
|
|
37
40
|
$_emitted-density: () !default;
|
|
41
|
+
$_emitted-base: () !default;
|
|
38
42
|
|
|
39
43
|
/// Extracts a color from a palette or throws an error if it doesn't exist.
|
|
40
44
|
/// @param {Map} $palette The palette from which to extract a color.
|
|
@@ -71,7 +75,6 @@ $_emitted-density: () !default;
|
|
|
71
75
|
lighter: _get-color-from-palette($base-palette, $lighter),
|
|
72
76
|
darker: _get-color-from-palette($base-palette, $darker),
|
|
73
77
|
text: _get-color-from-palette($base-palette, $text),
|
|
74
|
-
|
|
75
78
|
default-contrast: get-contrast-color-from-palette($base-palette, $default),
|
|
76
79
|
lighter-contrast: get-contrast-color-from-palette($base-palette, $lighter),
|
|
77
80
|
darker-contrast: get-contrast-color-from-palette($base-palette, $darker)
|
|
@@ -184,10 +187,10 @@ $_emitted-density: () !default;
|
|
|
184
187
|
// configuration for the `color` theming part.
|
|
185
188
|
@if $accent != null {
|
|
186
189
|
@warn $_legacy-theme-warning;
|
|
187
|
-
@return private-create-backwards-compatibility-theme(_mat-validate-theme((
|
|
190
|
+
@return _internalize-theme(private-create-backwards-compatibility-theme(_mat-validate-theme((
|
|
188
191
|
_is-legacy-theme: true,
|
|
189
192
|
color: _mat-create-light-color-config($primary, $accent, $warn),
|
|
190
|
-
)));
|
|
193
|
+
))));
|
|
191
194
|
}
|
|
192
195
|
// If the map pattern is used (1), we just pass-through the configurations for individual
|
|
193
196
|
// parts of the theming system, but update the `color` configuration if set. As explained
|
|
@@ -200,7 +203,8 @@ $_emitted-density: () !default;
|
|
|
200
203
|
$warn: map.get($color-settings, warn);
|
|
201
204
|
$result: map.merge($result, (color: _mat-create-light-color-config($primary, $accent, $warn)));
|
|
202
205
|
}
|
|
203
|
-
@return
|
|
206
|
+
@return _internalize-theme(
|
|
207
|
+
private-create-backwards-compatibility-theme(_mat-validate-theme($result)));
|
|
204
208
|
}
|
|
205
209
|
|
|
206
210
|
// TODO: Remove legacy API and rename below `$primary` to `$config`. Currently it cannot be renamed
|
|
@@ -225,10 +229,10 @@ $_emitted-density: () !default;
|
|
|
225
229
|
// configuration for the `color` theming part.
|
|
226
230
|
@if $accent != null {
|
|
227
231
|
@warn $_legacy-theme-warning;
|
|
228
|
-
@return private-create-backwards-compatibility-theme(_mat-validate-theme((
|
|
232
|
+
@return _internalize-theme(private-create-backwards-compatibility-theme(_mat-validate-theme((
|
|
229
233
|
_is-legacy-theme: true,
|
|
230
234
|
color: _mat-create-dark-color-config($primary, $accent, $warn),
|
|
231
|
-
)));
|
|
235
|
+
))));
|
|
232
236
|
}
|
|
233
237
|
// If the map pattern is used (1), we just pass-through the configurations for individual
|
|
234
238
|
// parts of the theming system, but update the `color` configuration if set. As explained
|
|
@@ -241,7 +245,8 @@ $_emitted-density: () !default;
|
|
|
241
245
|
$warn: map.get($color-settings, warn);
|
|
242
246
|
$result: map.merge($result, (color: _mat-create-dark-color-config($primary, $accent, $warn)));
|
|
243
247
|
}
|
|
244
|
-
@return
|
|
248
|
+
@return _internalize-theme(
|
|
249
|
+
private-create-backwards-compatibility-theme(_mat-validate-theme($result)));
|
|
245
250
|
}
|
|
246
251
|
|
|
247
252
|
/// Gets the color configuration from the given theme or configuration.
|
|
@@ -321,6 +326,8 @@ $_emitted-density: () !default;
|
|
|
321
326
|
// Private APIs
|
|
322
327
|
//
|
|
323
328
|
|
|
329
|
+
$_internals: _mat-theming-internals-do-not-access;
|
|
330
|
+
|
|
324
331
|
// Checks if configurations that have been declared in the given theme have been generated
|
|
325
332
|
// before. If so, warnings will be reported. This should notify developers in case duplicate
|
|
326
333
|
// styles are accidentally generated due to wrong usage of the all-theme mixins.
|
|
@@ -334,6 +341,111 @@ $_emitted-density: () !default;
|
|
|
334
341
|
// (e.g. `all-component-themes` and `all-legacy-component-themes`) without causing any
|
|
335
342
|
// style duplication.
|
|
336
343
|
@mixin private-check-duplicate-theme-styles($theme-or-color-config, $id) {
|
|
344
|
+
// TODO(mmalerba): use get-theme-version for this check when its moved out of experimental.
|
|
345
|
+
@if map.get($theme-or-color-config, $_internals, theme-version) == 1 {
|
|
346
|
+
@include _check-duplicate-theme-styles-v1($theme-or-color-config, $id) {
|
|
347
|
+
// Optionally, consumers of this mixin can wrap contents inside so that nested
|
|
348
|
+
// duplicate style checks do not report another warning. e.g. if developers include
|
|
349
|
+
// the `all-component-themes` mixin twice, only the top-level duplicate styles check
|
|
350
|
+
// should report a warning. Not all individual components should report a warning too.
|
|
351
|
+
$orig-mat-theme-ignore-duplication-warnings: $theme-ignore-duplication-warnings;
|
|
352
|
+
$theme-ignore-duplication-warnings: true !global;
|
|
353
|
+
@content;
|
|
354
|
+
$theme-ignore-duplication-warnings: $orig-mat-theme-ignore-duplication-warnings !global;
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
@else {
|
|
358
|
+
@include _check-duplicate-theme-styles-v0($theme-or-color-config, $id) {
|
|
359
|
+
// Optionally, consumers of this mixin can wrap contents inside so that nested
|
|
360
|
+
// duplicate style checks do not report another warning. e.g. if developers include
|
|
361
|
+
// the `all-component-themes` mixin twice, only the top-level duplicate styles check
|
|
362
|
+
// should report a warning. Not all individual components should report a warning too.
|
|
363
|
+
$orig-mat-theme-ignore-duplication-warnings: $theme-ignore-duplication-warnings;
|
|
364
|
+
$theme-ignore-duplication-warnings: true !global;
|
|
365
|
+
@content;
|
|
366
|
+
$theme-ignore-duplication-warnings: $orig-mat-theme-ignore-duplication-warnings !global;
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
/// Strip out any settings map entries that have empty values (null or ()).
|
|
372
|
+
@function _strip-empty-settings($settings) {
|
|
373
|
+
$result: ();
|
|
374
|
+
@each $key, $value in $settings {
|
|
375
|
+
@if $value != null and $value != () {
|
|
376
|
+
$result: map.set($result, $key, $value);
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
@return if($result == (), null, $result);
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
// Checks for duplicate styles in a `theme-version: 1` style theme.
|
|
383
|
+
@mixin _check-duplicate-theme-styles-v1($theme-or-color-config, $id) {
|
|
384
|
+
$color-settings: _strip-empty-settings((
|
|
385
|
+
theme-type: map.get($theme-or-color-config, $_internals, theme-type),
|
|
386
|
+
color-tokens: map.get($theme-or-color-config, $_internals, color-tokens),
|
|
387
|
+
));
|
|
388
|
+
$typography-settings: _strip-empty-settings((
|
|
389
|
+
typography-tokens: map.get($theme-or-color-config, $_internals, typography-tokens),
|
|
390
|
+
));
|
|
391
|
+
$density-settings: _strip-empty-settings((
|
|
392
|
+
density-scale: map.get($theme-or-color-config, $_internals, density-scale),
|
|
393
|
+
density-tokens: map.get($theme-or-color-config, $_internals, density-tokens),
|
|
394
|
+
));
|
|
395
|
+
$base-settings: _strip-empty-settings((
|
|
396
|
+
base-tokens: map.get($theme-or-color-config, $_internals, base-tokens),
|
|
397
|
+
));
|
|
398
|
+
$previous-color-settings: map.get($_emitted-color, $id) or ();
|
|
399
|
+
$previous-typography-settings: map.get($_emitted-typography, $id) or ();
|
|
400
|
+
$previous-density-settings: map.get($_emitted-density, $id) or ();
|
|
401
|
+
$previous-base-settings: map.get($_emitted-base, $id) or ();
|
|
402
|
+
|
|
403
|
+
// Check if the color configuration has been generated before.
|
|
404
|
+
@if $color-settings != null {
|
|
405
|
+
@if list.index($previous-color-settings, $color-settings) != null and
|
|
406
|
+
not $theme-ignore-duplication-warnings {
|
|
407
|
+
@warn 'The same color styles are generated multiple times. ' + $_duplicate-warning;
|
|
408
|
+
}
|
|
409
|
+
$previous-color-settings: list.append($previous-color-settings, $color-settings);
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
// Check if the typography configuration has been generated before.
|
|
413
|
+
@if $typography-settings != null {
|
|
414
|
+
@if list.index($previous-typography-settings, $typography-settings) != null and
|
|
415
|
+
not $theme-ignore-duplication-warnings {
|
|
416
|
+
@warn 'The same typography styles are generated multiple times. ' + $_duplicate-warning;
|
|
417
|
+
}
|
|
418
|
+
$previous-typography-settings: list.append($previous-typography-settings, $typography-settings);
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
// Check if the density configuration has been generated before.
|
|
422
|
+
@if $density-settings != null {
|
|
423
|
+
@if list.index($previous-density-settings, $density-settings) != null and
|
|
424
|
+
not $theme-ignore-duplication-warnings {
|
|
425
|
+
@warn 'The same density styles are generated multiple times. ' + $_duplicate-warning;
|
|
426
|
+
}
|
|
427
|
+
$previous-density-settings: list.append($previous-density-settings, $density-settings);
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
// Check if the base configuration has been generated before.
|
|
431
|
+
@if $base-settings != null {
|
|
432
|
+
@if list.index($previous-base-settings, $base-settings) != null and
|
|
433
|
+
not $theme-ignore-duplication-warnings {
|
|
434
|
+
@warn 'The same base theme styles are generated multiple times. ' + $_duplicate-warning;
|
|
435
|
+
}
|
|
436
|
+
$previous-base-settings: list.append($previous-base-settings, $base-settings);
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
$_emitted-color: map.set($_emitted-color, $id, $previous-color-settings) !global;
|
|
440
|
+
$_emitted-density: map.set($_emitted-density, $id, $previous-density-settings) !global;
|
|
441
|
+
$_emitted-typography: map.set($_emitted-typography, $id, $previous-typography-settings) !global;
|
|
442
|
+
$_emitted-base: map.set($_emitted-base, $id, $previous-base-settings) !global;
|
|
443
|
+
|
|
444
|
+
@content;
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
// Checks for duplicate styles in a `theme-version: 0` style theme.
|
|
448
|
+
@mixin _check-duplicate-theme-styles-v0($theme-or-color-config, $id) {
|
|
337
449
|
$theme: private-legacy-get-theme($theme-or-color-config);
|
|
338
450
|
$color-config: get-color-config($theme);
|
|
339
451
|
$density-config: get-density-config($theme);
|
|
@@ -383,13 +495,6 @@ $_emitted-density: () !default;
|
|
|
383
495
|
$_emitted-density: map.merge($_emitted-density, ($id: $previous-density)) !global;
|
|
384
496
|
$_emitted-typography: map.merge($_emitted-typography, ($id: $previous-typography)) !global;
|
|
385
497
|
|
|
386
|
-
// Optionally, consumers of this mixin can wrap contents inside so that nested
|
|
387
|
-
// duplicate style checks do not report another warning. e.g. if developers include
|
|
388
|
-
// the `all-component-themes` mixin twice, only the top-level duplicate styles check
|
|
389
|
-
// should report a warning. Not all individual components should report a warning too.
|
|
390
|
-
$orig-mat-theme-ignore-duplication-warnings: $theme-ignore-duplication-warnings;
|
|
391
|
-
$theme-ignore-duplication-warnings: true !global;
|
|
392
|
-
|
|
393
498
|
// If duplicate default density styles would be generated for a legacy constructed theme,
|
|
394
499
|
// we adjust the density generation so that no density styles are generated by default.
|
|
395
500
|
// If no default density styles have been generated yet, we ensure that the styles
|
|
@@ -401,7 +506,6 @@ $_emitted-density: () !default;
|
|
|
401
506
|
compatibility.$private-density-generate-styles: not $duplicate-legacy-density;
|
|
402
507
|
|
|
403
508
|
@content;
|
|
404
|
-
$theme-ignore-duplication-warnings: $orig-mat-theme-ignore-duplication-warnings !global;
|
|
405
509
|
|
|
406
510
|
compatibility.$private-density-generate-at-root: false;
|
|
407
511
|
compatibility.$private-density-generate-styles: true;
|
|
@@ -456,7 +560,8 @@ $_emitted-density: () !default;
|
|
|
456
560
|
// TODO(devversion): remove this in the future. Constructing themes manually is rare,
|
|
457
561
|
// and the code can be easily updated to the new API.
|
|
458
562
|
@function private-legacy-get-theme($theme-or-color-config) {
|
|
459
|
-
@if private-is-theme-object($theme-or-color-config)
|
|
563
|
+
@if private-is-theme-object($theme-or-color-config) or
|
|
564
|
+
map.get($theme-or-color-config, $_internals, theme-version) == 1 {
|
|
460
565
|
@return $theme-or-color-config;
|
|
461
566
|
}
|
|
462
567
|
|
|
@@ -495,3 +600,51 @@ $_emitted-density: () !default;
|
|
|
495
600
|
}
|
|
496
601
|
@return $density-scale;
|
|
497
602
|
}
|
|
603
|
+
|
|
604
|
+
/// Copies the given theme object and nests it within itself under a secret key and replaces the
|
|
605
|
+
/// original map keys with error values. This allows the inspection API which is aware of the secret
|
|
606
|
+
/// key to access the real values, but attempts to directly access the map will result in errors.
|
|
607
|
+
/// @param {Map} $theme The theme map.
|
|
608
|
+
@function _internalize-theme($theme) {
|
|
609
|
+
@if map.has-key($theme, $_internals) {
|
|
610
|
+
@return $theme;
|
|
611
|
+
}
|
|
612
|
+
$internalized-theme: (
|
|
613
|
+
$_internals: (
|
|
614
|
+
theme-version: 0,
|
|
615
|
+
m2-config: $theme
|
|
616
|
+
)
|
|
617
|
+
);
|
|
618
|
+
@if ($theme-legacy-inspection-api-compatibility) {
|
|
619
|
+
@return map.merge($theme, $internalized-theme);
|
|
620
|
+
}
|
|
621
|
+
$error-theme:
|
|
622
|
+
_replace-values-with-errors($theme, 'Theme may only be accessed via theme inspection API');
|
|
623
|
+
@return map.merge($error-theme, $internalized-theme);
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
/// Replaces concrete CSS values with errors in a theme object.
|
|
627
|
+
/// Errors are represented as a map `(ERROR: <message>)`. Because maps are not valid CSS values,
|
|
628
|
+
/// the Sass will not compile if the user tries to use any of the error theme values in their CSS.
|
|
629
|
+
/// Users will see a message about `(ERROR: <message>)` not being a valid CSS value. Using the
|
|
630
|
+
/// message, that winds up getting shown, we can help explain to users why they're getting the
|
|
631
|
+
/// error.
|
|
632
|
+
/// @param {*} $value The theme value to replace with errors.
|
|
633
|
+
/// @param {String} $message The error message to sow users.
|
|
634
|
+
/// @return {Map} A version of $value where concrete CSS values have been replaced with errors
|
|
635
|
+
@function _replace-values-with-errors($value, $message) {
|
|
636
|
+
$value-type: meta.type-of($value);
|
|
637
|
+
@if $value-type == 'map' {
|
|
638
|
+
@each $k, $v in $value {
|
|
639
|
+
$value: map.set($value, $k, _replace-values-with-errors($v, $message));
|
|
640
|
+
}
|
|
641
|
+
@return $value;
|
|
642
|
+
}
|
|
643
|
+
@else if $value-type == 'list' and list.length($value) > 0 {
|
|
644
|
+
@for $i from 1 through list.length() {
|
|
645
|
+
$value: list.set-nth($value, $i, _replace-values-with-errors(list.nth($value, $i), $message));
|
|
646
|
+
}
|
|
647
|
+
@return $value;
|
|
648
|
+
}
|
|
649
|
+
@return (ERROR: $message);
|
|
650
|
+
}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
@use 'sass:map';
|
|
2
1
|
@use '../../token-utils';
|
|
3
|
-
@use '../../../theming/
|
|
4
|
-
@use '../../../typography/typography-utils';
|
|
2
|
+
@use '../../../theming/inspection';
|
|
5
3
|
@use '../../../style/sass-utils';
|
|
6
4
|
|
|
7
5
|
// The prefix used to generate the fully qualified name for tokens in this file.
|
|
@@ -14,45 +12,41 @@ $prefix: (mat, card);
|
|
|
14
12
|
}
|
|
15
13
|
|
|
16
14
|
// Tokens that can be configured through Angular Material's color theming API.
|
|
17
|
-
@function get-color-tokens($
|
|
18
|
-
$foreground: map.get($config, foreground);
|
|
19
|
-
|
|
15
|
+
@function get-color-tokens($theme) {
|
|
20
16
|
@return (
|
|
21
17
|
// Text color of the card's subtitle.
|
|
22
|
-
subtitle-text-color:
|
|
18
|
+
subtitle-text-color: inspection.get-theme-color($theme, foreground, secondary-text),
|
|
23
19
|
);
|
|
24
20
|
}
|
|
25
21
|
|
|
26
22
|
// Tokens that can be configured through Angular Material's typography theming API.
|
|
27
|
-
@function get-typography-tokens($
|
|
23
|
+
@function get-typography-tokens($theme) {
|
|
28
24
|
@return (
|
|
29
25
|
// Font family of the card's title.
|
|
30
|
-
title-text-font:
|
|
31
|
-
or typography-utils.font-family($config),
|
|
26
|
+
title-text-font: inspection.get-theme-typography($theme, headline-6, font-family),
|
|
32
27
|
// Line height of the card's title.
|
|
33
|
-
title-text-line-height:
|
|
28
|
+
title-text-line-height: inspection.get-theme-typography($theme, headline-6, line-height),
|
|
34
29
|
// Font size of the card's title.
|
|
35
|
-
title-text-size:
|
|
30
|
+
title-text-size: inspection.get-theme-typography($theme, headline-6, font-size),
|
|
36
31
|
// Letter spacing of the card's title.
|
|
37
|
-
title-text-tracking:
|
|
32
|
+
title-text-tracking: inspection.get-theme-typography($theme, headline-6, letter-spacing),
|
|
38
33
|
// Font weight of the card's title.
|
|
39
|
-
title-text-weight:
|
|
34
|
+
title-text-weight: inspection.get-theme-typography($theme, headline-6, font-weight),
|
|
40
35
|
// Font family of the card's subtitle.
|
|
41
|
-
subtitle-text-font:
|
|
42
|
-
or typography-utils.font-family($config),
|
|
36
|
+
subtitle-text-font: inspection.get-theme-typography($theme, subtitle-2, font-family),
|
|
43
37
|
// Line height of the card's subtitle.
|
|
44
|
-
subtitle-text-line-height:
|
|
38
|
+
subtitle-text-line-height: inspection.get-theme-typography($theme, subtitle-2, line-height),
|
|
45
39
|
// Font size of the card's subtitle.
|
|
46
|
-
subtitle-text-size:
|
|
40
|
+
subtitle-text-size: inspection.get-theme-typography($theme, subtitle-2, font-size),
|
|
47
41
|
// Letter spacing of the card's subtitle.
|
|
48
|
-
subtitle-text-tracking:
|
|
42
|
+
subtitle-text-tracking: inspection.get-theme-typography($theme, subtitle-2, letter-spacing),
|
|
49
43
|
// Font weight of the card's subtitle.
|
|
50
|
-
subtitle-text-weight:
|
|
44
|
+
subtitle-text-weight: inspection.get-theme-typography($theme, subtitle-2, font-weight),
|
|
51
45
|
);
|
|
52
46
|
}
|
|
53
47
|
|
|
54
48
|
// Tokens that can be configured through Angular Material's density theming API.
|
|
55
|
-
@function get-density-tokens($
|
|
49
|
+
@function get-density-tokens($theme) {
|
|
56
50
|
@return ();
|
|
57
51
|
}
|
|
58
52
|
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
@use 'sass:map';
|
|
2
2
|
@use '../../token-utils';
|
|
3
3
|
@use '../../../style/sass-utils';
|
|
4
|
-
@use '../../../
|
|
4
|
+
@use '../../../theming/inspection';
|
|
5
|
+
@use '../../../theming/palette';
|
|
5
6
|
|
|
6
7
|
// The prefix used to generate the fully qualified name for tokens in this file.
|
|
7
8
|
$prefix: (mat, form-field);
|
|
@@ -13,29 +14,57 @@ $prefix: (mat, form-field);
|
|
|
13
14
|
}
|
|
14
15
|
|
|
15
16
|
// Tokens that can be configured through Angular Material's color theming API.
|
|
16
|
-
@function get-color-tokens($
|
|
17
|
-
$is-dark:
|
|
17
|
+
@function get-color-tokens($theme) {
|
|
18
|
+
$is-dark: inspection.get-theme-type($theme) == dark;
|
|
18
19
|
$on-surface: if($is-dark, #fff, #000);
|
|
20
|
+
$color-tokens: private-get-color-palette-color-tokens($theme, primary);
|
|
19
21
|
|
|
20
|
-
@return (
|
|
22
|
+
@return map.merge($color-tokens, (
|
|
21
23
|
// MDC has a token for the enabled placeholder, but not for the disabled one.
|
|
22
24
|
disabled-input-text-placeholder-color: rgba($on-surface, 0.38),
|
|
25
|
+
state-layer-color: rgba($on-surface, 0.87),
|
|
26
|
+
error-text-color: inspection.get-theme-color($theme, warn),
|
|
27
|
+
|
|
28
|
+
// On dark themes we set the native `select` color to some shade of white,
|
|
29
|
+
// however the color propagates to all of the `option` elements, which are
|
|
30
|
+
// always on a white background inside the dropdown, causing them to blend in.
|
|
31
|
+
// Since we can't change background of the dropdown, we need to explicitly
|
|
32
|
+
// reset the color of the options to something dark.
|
|
33
|
+
select-option-text-color: if($is-dark, palette.$dark-primary-text, inherit),
|
|
34
|
+
// Note the spelling of the `GrayText` here which is a system color. See:
|
|
35
|
+
// https://developer.mozilla.org/en-US/docs/Web/CSS/system-color
|
|
36
|
+
select-disabled-option-text-color: if($is-dark, palette.$dark-disabled-text, GrayText),
|
|
37
|
+
|
|
38
|
+
// These values are taken from the MDC select implementation:
|
|
39
|
+
// https://github.com/material-components/material-components-web/blob/master/packages/mdc-select/_select-theme.scss
|
|
40
|
+
enabled-select-arrow-color: rgba($on-surface, 0.54),
|
|
41
|
+
disabled-select-arrow-color: rgba($on-surface, 0.38),
|
|
42
|
+
|
|
43
|
+
hover-state-layer-opacity: if($is-dark, 0.08, 0.04),
|
|
44
|
+
focus-state-layer-opacity: if($is-dark, 0.24, 0.12),
|
|
45
|
+
));
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// Generates the mapping for the properties that change based on the form field color.
|
|
49
|
+
@function private-get-color-palette-color-tokens($theme, $palette-name) {
|
|
50
|
+
$palette-color: inspection.get-theme-color($theme, $palette-name);
|
|
51
|
+
|
|
52
|
+
@return (
|
|
53
|
+
focus-select-arrow-color: sass-utils.safe-color-change($palette-color, $alpha: 0.87),
|
|
23
54
|
);
|
|
24
55
|
}
|
|
25
56
|
|
|
26
57
|
// Tokens that can be configured through Angular Material's typography theming API.
|
|
27
|
-
@function get-typography-tokens($
|
|
28
|
-
$fallback-font-family: typography-utils.font-family($config);
|
|
29
|
-
|
|
58
|
+
@function get-typography-tokens($theme) {
|
|
30
59
|
@return (
|
|
31
60
|
// MDC uses `subtitle1` for the input value, placeholder and floating label. The spec
|
|
32
61
|
// shows `body1` for text fields though, so we manually override the typography.
|
|
33
62
|
// Note: Form controls inherit the typography from the parent form field.
|
|
34
|
-
container-text-font:
|
|
35
|
-
container-text-line-height:
|
|
36
|
-
container-text-size:
|
|
37
|
-
container-text-tracking:
|
|
38
|
-
container-text-weight:
|
|
63
|
+
container-text-font: inspection.get-theme-typography($theme, body-1, font-family),
|
|
64
|
+
container-text-line-height: inspection.get-theme-typography($theme, body-1, line-height),
|
|
65
|
+
container-text-size: inspection.get-theme-typography($theme, body-1, font-size),
|
|
66
|
+
container-text-tracking: inspection.get-theme-typography($theme, body-1, letter-spacing),
|
|
67
|
+
container-text-weight: inspection.get-theme-typography($theme, body-1, font-weight),
|
|
39
68
|
|
|
40
69
|
// In the container styles, we updated the floating label to use the `body-1` typography level.
|
|
41
70
|
// The MDC notched outline overrides this accidentally (only when the label floats) to a
|
|
@@ -45,18 +74,18 @@ $prefix: (mat, form-field);
|
|
|
45
74
|
// https://github.com/material-components/material-components-web/blob/master/packages/mdc-notched-outline/_mixins.scss#L272-L292.
|
|
46
75
|
// This is why we can't use their `label-text-populated-size` token and we have to declare
|
|
47
76
|
// our own version of it.
|
|
48
|
-
outlined-label-text-populated-size:
|
|
77
|
+
outlined-label-text-populated-size: inspection.get-theme-typography($theme, body-1, font-size),
|
|
49
78
|
|
|
50
|
-
subscript-text-font:
|
|
51
|
-
subscript-text-line-height:
|
|
52
|
-
subscript-text-size:
|
|
53
|
-
subscript-text-tracking:
|
|
54
|
-
subscript-text-weight:
|
|
79
|
+
subscript-text-font: inspection.get-theme-typography($theme, caption, font-family),
|
|
80
|
+
subscript-text-line-height: inspection.get-theme-typography($theme, caption, line-height),
|
|
81
|
+
subscript-text-size: inspection.get-theme-typography($theme, caption, font-size),
|
|
82
|
+
subscript-text-tracking: inspection.get-theme-typography($theme, caption, letter-spacing),
|
|
83
|
+
subscript-text-weight: inspection.get-theme-typography($theme, caption, font-weight),
|
|
55
84
|
);
|
|
56
85
|
}
|
|
57
86
|
|
|
58
87
|
// Tokens that can be configured through Angular Material's density theming API.
|
|
59
|
-
@function get-density-tokens($
|
|
88
|
+
@function get-density-tokens($theme) {
|
|
60
89
|
@return ();
|
|
61
90
|
}
|
|
62
91
|
|