@angular/material 10.0.0-rc.3 → 10.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_theming.scss +17 -17
- package/autocomplete/index.metadata.json +1 -1
- package/autocomplete/testing/autocomplete-harness.d.ts +2 -0
- package/bundles/material-autocomplete-testing.umd.js +11 -0
- package/bundles/material-autocomplete-testing.umd.js.map +1 -1
- package/bundles/material-autocomplete-testing.umd.min.js +2 -2
- package/bundles/material-autocomplete-testing.umd.min.js.map +1 -1
- package/bundles/material-autocomplete.umd.js +3 -1
- package/bundles/material-autocomplete.umd.js.map +1 -1
- package/bundles/material-autocomplete.umd.min.js +5 -5
- package/bundles/material-autocomplete.umd.min.js.map +1 -1
- package/bundles/material-badge-testing.umd.min.js +1 -1
- package/bundles/material-badge-testing.umd.min.js.map +1 -1
- package/bundles/material-bottom-sheet-testing.umd.min.js +1 -1
- package/bundles/material-bottom-sheet-testing.umd.min.js.map +1 -1
- package/bundles/material-button-testing.umd.js +11 -0
- package/bundles/material-button-testing.umd.js.map +1 -1
- package/bundles/material-button-testing.umd.min.js +2 -2
- package/bundles/material-button-testing.umd.min.js.map +1 -1
- package/bundles/material-button-toggle-testing.umd.js +11 -0
- package/bundles/material-button-toggle-testing.umd.js.map +1 -1
- package/bundles/material-button-toggle-testing.umd.min.js +3 -3
- package/bundles/material-button-toggle-testing.umd.min.js.map +1 -1
- package/bundles/material-button-toggle.umd.js +12 -3
- package/bundles/material-button-toggle.umd.js.map +1 -1
- package/bundles/material-button-toggle.umd.min.js +2 -2
- package/bundles/material-button-toggle.umd.min.js.map +1 -1
- package/bundles/material-button.umd.js +7 -2
- package/bundles/material-button.umd.js.map +1 -1
- package/bundles/material-button.umd.min.js +4 -4
- package/bundles/material-button.umd.min.js.map +1 -1
- package/bundles/material-card-testing.umd.js +335 -0
- package/bundles/material-card-testing.umd.js.map +1 -0
- package/bundles/material-card-testing.umd.min.js +44 -0
- package/bundles/material-card-testing.umd.min.js.map +1 -0
- package/bundles/material-checkbox-testing.umd.js +11 -0
- package/bundles/material-checkbox-testing.umd.js.map +1 -1
- package/bundles/material-checkbox-testing.umd.min.js +3 -3
- package/bundles/material-checkbox-testing.umd.min.js.map +1 -1
- package/bundles/material-checkbox.umd.js.map +1 -1
- package/bundles/material-chips.umd.js +36 -12
- package/bundles/material-chips.umd.js.map +1 -1
- package/bundles/material-chips.umd.min.js +4 -4
- package/bundles/material-chips.umd.min.js.map +1 -1
- package/bundles/material-core-testing.umd.min.js +1 -1
- package/bundles/material-core-testing.umd.min.js.map +1 -1
- package/bundles/material-core.umd.js +11 -3
- package/bundles/material-core.umd.js.map +1 -1
- package/bundles/material-core.umd.min.js +11 -11
- package/bundles/material-core.umd.min.js.map +1 -1
- package/bundles/material-datepicker.umd.js +20 -11
- package/bundles/material-datepicker.umd.js.map +1 -1
- package/bundles/material-datepicker.umd.min.js +5 -5
- package/bundles/material-datepicker.umd.min.js.map +1 -1
- package/bundles/material-dialog-testing.umd.min.js +1 -1
- package/bundles/material-dialog-testing.umd.min.js.map +1 -1
- package/bundles/material-dialog.umd.js +45 -8
- package/bundles/material-dialog.umd.js.map +1 -1
- package/bundles/material-dialog.umd.min.js +14 -7
- package/bundles/material-dialog.umd.min.js.map +1 -1
- package/bundles/material-divider-testing.umd.min.js +1 -1
- package/bundles/material-divider-testing.umd.min.js.map +1 -1
- package/bundles/material-expansion-testing.umd.js +11 -0
- package/bundles/material-expansion-testing.umd.js.map +1 -1
- package/bundles/material-expansion-testing.umd.min.js +3 -3
- package/bundles/material-expansion-testing.umd.min.js.map +1 -1
- package/bundles/material-form-field-testing.umd.js +32 -0
- package/bundles/material-form-field-testing.umd.js.map +1 -1
- package/bundles/material-form-field-testing.umd.min.js +4 -4
- package/bundles/material-form-field-testing.umd.min.js.map +1 -1
- package/bundles/material-form-field.umd.js +47 -21
- package/bundles/material-form-field.umd.js.map +1 -1
- package/bundles/material-form-field.umd.min.js +5 -5
- package/bundles/material-form-field.umd.min.js.map +1 -1
- package/bundles/material-grid-list-testing.umd.min.js +1 -1
- package/bundles/material-grid-list-testing.umd.min.js.map +1 -1
- package/bundles/material-grid-list.umd.js +2 -2
- package/bundles/material-grid-list.umd.js.map +1 -1
- package/bundles/material-grid-list.umd.min.js +2 -2
- package/bundles/material-grid-list.umd.min.js.map +1 -1
- package/bundles/material-input-testing.umd.js +23 -6
- package/bundles/material-input-testing.umd.js.map +1 -1
- package/bundles/material-input-testing.umd.min.js +3 -3
- package/bundles/material-input-testing.umd.min.js.map +1 -1
- package/bundles/material-input.umd.js +28 -3
- package/bundles/material-input.umd.js.map +1 -1
- package/bundles/material-input.umd.min.js +3 -3
- package/bundles/material-input.umd.min.js.map +1 -1
- package/bundles/material-list-testing.umd.js +33 -0
- package/bundles/material-list-testing.umd.js.map +1 -1
- package/bundles/material-list-testing.umd.min.js +2 -2
- package/bundles/material-list-testing.umd.min.js.map +1 -1
- package/bundles/material-list.umd.js +3 -3
- package/bundles/material-list.umd.min.js +1 -1
- package/bundles/material-list.umd.min.js.map +1 -1
- package/bundles/material-menu-testing.umd.js +22 -0
- package/bundles/material-menu-testing.umd.js.map +1 -1
- package/bundles/material-menu-testing.umd.min.js +2 -2
- package/bundles/material-menu-testing.umd.min.js.map +1 -1
- package/bundles/material-menu.umd.js +13 -2
- package/bundles/material-menu.umd.js.map +1 -1
- package/bundles/material-menu.umd.min.js +4 -4
- package/bundles/material-menu.umd.min.js.map +1 -1
- package/bundles/material-paginator-testing.umd.min.js +1 -1
- package/bundles/material-paginator-testing.umd.min.js.map +1 -1
- package/bundles/material-progress-bar-testing.umd.min.js +1 -1
- package/bundles/material-progress-bar-testing.umd.min.js.map +1 -1
- package/bundles/material-progress-spinner-testing.umd.js +1 -1
- package/bundles/material-progress-spinner-testing.umd.js.map +1 -1
- package/bundles/material-progress-spinner-testing.umd.min.js +2 -2
- package/bundles/material-progress-spinner-testing.umd.min.js.map +1 -1
- package/bundles/material-progress-spinner.umd.js +2 -2
- package/bundles/material-progress-spinner.umd.min.js +3 -3
- package/bundles/material-progress-spinner.umd.min.js.map +1 -1
- package/bundles/material-radio-testing.umd.js +11 -0
- package/bundles/material-radio-testing.umd.js.map +1 -1
- package/bundles/material-radio-testing.umd.min.js +3 -3
- package/bundles/material-radio-testing.umd.min.js.map +1 -1
- package/bundles/material-radio.umd.js +15 -5
- package/bundles/material-radio.umd.js.map +1 -1
- package/bundles/material-radio.umd.min.js +2 -2
- package/bundles/material-radio.umd.min.js.map +1 -1
- package/bundles/material-select-testing.umd.js +11 -0
- package/bundles/material-select-testing.umd.js.map +1 -1
- package/bundles/material-select-testing.umd.min.js +2 -2
- package/bundles/material-select-testing.umd.min.js.map +1 -1
- package/bundles/material-select.umd.js +11 -3
- package/bundles/material-select.umd.js.map +1 -1
- package/bundles/material-select.umd.min.js +4 -4
- package/bundles/material-select.umd.min.js.map +1 -1
- package/bundles/material-sidenav-testing.umd.min.js +1 -1
- package/bundles/material-sidenav-testing.umd.min.js.map +1 -1
- package/bundles/material-sidenav.umd.js +41 -17
- package/bundles/material-sidenav.umd.js.map +1 -1
- package/bundles/material-sidenav.umd.min.js +2 -2
- package/bundles/material-sidenav.umd.min.js.map +1 -1
- package/bundles/material-slide-toggle-testing.umd.js +11 -0
- package/bundles/material-slide-toggle-testing.umd.js.map +1 -1
- package/bundles/material-slide-toggle-testing.umd.min.js +2 -2
- package/bundles/material-slide-toggle-testing.umd.min.js.map +1 -1
- package/bundles/material-slide-toggle.umd.js.map +1 -1
- package/bundles/material-slider-testing.umd.js +11 -0
- package/bundles/material-slider-testing.umd.js.map +1 -1
- package/bundles/material-slider-testing.umd.min.js +2 -2
- package/bundles/material-slider-testing.umd.min.js.map +1 -1
- package/bundles/material-snack-bar-testing.umd.min.js +1 -1
- package/bundles/material-snack-bar-testing.umd.min.js.map +1 -1
- package/bundles/material-snack-bar.umd.js +47 -39
- package/bundles/material-snack-bar.umd.js.map +1 -1
- package/bundles/material-snack-bar.umd.min.js +2 -2
- package/bundles/material-snack-bar.umd.min.js.map +1 -1
- package/bundles/material-sort-testing.umd.js +10 -10
- package/bundles/material-sort-testing.umd.js.map +1 -1
- package/bundles/material-sort-testing.umd.min.js +3 -3
- package/bundles/material-sort-testing.umd.min.js.map +1 -1
- package/bundles/material-sort.umd.js +25 -12
- package/bundles/material-sort.umd.js.map +1 -1
- package/bundles/material-sort.umd.min.js +5 -5
- package/bundles/material-sort.umd.min.js.map +1 -1
- package/bundles/material-table-testing.umd.min.js +1 -1
- package/bundles/material-table-testing.umd.min.js.map +1 -1
- package/bundles/material-table.umd.min.js +2 -2
- package/bundles/material-table.umd.min.js.map +1 -1
- package/bundles/material-tabs-testing.umd.min.js +1 -1
- package/bundles/material-tabs-testing.umd.min.js.map +1 -1
- package/bundles/material-tabs.umd.js +23 -4
- package/bundles/material-tabs.umd.js.map +1 -1
- package/bundles/material-tabs.umd.min.js +5 -12
- package/bundles/material-tabs.umd.min.js.map +1 -1
- package/bundles/material-toolbar-testing.umd.js +330 -0
- package/bundles/material-toolbar-testing.umd.js.map +1 -0
- package/bundles/material-toolbar-testing.umd.min.js +44 -0
- package/bundles/material-toolbar-testing.umd.min.js.map +1 -0
- package/bundles/material-tooltip-testing.umd.min.js +1 -1
- package/bundles/material-tooltip-testing.umd.min.js.map +1 -1
- package/bundles/material-tooltip.umd.js +14 -1
- package/bundles/material-tooltip.umd.js.map +1 -1
- package/bundles/material-tooltip.umd.min.js +3 -3
- package/bundles/material-tooltip.umd.min.js.map +1 -1
- package/bundles/material-tree.umd.js.map +1 -1
- package/button/_button-base.scss +1 -1
- package/button/_button-theme.scss +8 -8
- package/button/index.metadata.json +1 -1
- package/button/testing/button-harness.d.ts +2 -0
- package/button-toggle/button-toggle.d.ts +10 -3
- package/button-toggle/index.metadata.json +1 -1
- package/button-toggle/testing/button-toggle-harness.d.ts +2 -0
- package/card/testing/card-harness-filters.d.ts +17 -0
- package/card/testing/card-harness.d.ts +36 -0
- package/card/testing/index.d.ts +8 -0
- package/card/testing/package.json +9 -0
- package/card/testing/public-api.d.ts +9 -0
- package/checkbox/index.metadata.json +1 -1
- package/checkbox/testing/checkbox-harness.d.ts +2 -0
- package/chips/chip.d.ts +19 -1
- package/chips/index.metadata.json +1 -1
- package/core/focus-indicators/_focus-indicators.scss +6 -6
- package/core/index.metadata.json +1 -1
- package/core/option/optgroup.d.ts +7 -0
- package/core/ripple/ripple-ref.d.ts +21 -2
- package/core/ripple/ripple-renderer.d.ts +1 -19
- package/core/ripple/ripple.d.ts +2 -2
- package/core/style/_list-common.scss +1 -1
- package/datepicker/date-range-input-parts.d.ts +2 -4
- package/datepicker/date-range-input.d.ts +4 -4
- package/datepicker/date-range-picker.d.ts +10 -3
- package/datepicker/datepicker.d.ts +2 -3
- package/datepicker/index.metadata.json +1 -1
- package/datepicker/public-api.d.ts +1 -1
- package/dialog/dialog-container.d.ts +9 -2
- package/dialog/dialog-content-directives.d.ts +1 -0
- package/dialog/dialog-ref.d.ts +7 -0
- package/dialog/index.metadata.json +1 -1
- package/esm2015/autocomplete/autocomplete-module.js +18 -22
- package/esm2015/autocomplete/autocomplete-origin.js +16 -20
- package/esm2015/autocomplete/autocomplete-trigger.js +519 -521
- package/esm2015/autocomplete/autocomplete.js +126 -130
- package/esm2015/autocomplete/testing/autocomplete-harness.js +99 -97
- package/esm2015/badge/badge-module.js +13 -17
- package/esm2015/badge/badge.js +184 -188
- package/esm2015/badge/testing/badge-harness.js +74 -78
- package/esm2015/bottom-sheet/bottom-sheet-container.js +161 -165
- package/esm2015/bottom-sheet/bottom-sheet-module.js +15 -19
- package/esm2015/bottom-sheet/bottom-sheet.js +124 -128
- package/esm2015/bottom-sheet/testing/bottom-sheet-harness.js +29 -33
- package/esm2015/button/button-module.js +20 -24
- package/esm2015/button/button.js +111 -114
- package/esm2015/button/testing/button-harness.js +60 -58
- package/esm2015/button-toggle/button-toggle-module.js +10 -14
- package/esm2015/button-toggle/button-toggle.js +368 -368
- package/esm2015/button-toggle/testing/button-toggle-group-harness.js +42 -46
- package/esm2015/button-toggle/testing/button-toggle-harness.js +113 -111
- package/esm2015/card/card-module.js +30 -34
- package/esm2015/card/card.js +147 -203
- package/esm2015/card/testing/card-harness-filters.js +8 -0
- package/esm2015/card/testing/card-harness.js +52 -0
- package/esm2015/card/testing/index.js +9 -0
- package/esm2015/card/testing/public-api.js +10 -0
- package/esm2015/card/testing/testing.externs.js +0 -0
- package/esm2015/checkbox/checkbox-module.js +21 -29
- package/esm2015/checkbox/checkbox-required-validator.js +9 -13
- package/esm2015/checkbox/checkbox.js +315 -319
- package/esm2015/checkbox/testing/checkbox-harness.js +150 -148
- package/esm2015/chips/chip-input.js +119 -123
- package/esm2015/chips/chip-list.js +572 -576
- package/esm2015/chips/chip.js +333 -328
- package/esm2015/chips/chips-module.js +16 -20
- package/esm2015/core/animation/animation.js +12 -20
- package/esm2015/core/common-behaviors/common-module.js +91 -95
- package/esm2015/core/datetime/index.js +19 -27
- package/esm2015/core/datetime/native-date-adapter.js +202 -206
- package/esm2015/core/error/error-options.js +16 -24
- package/esm2015/core/line/line.js +18 -26
- package/esm2015/core/option/index.js +10 -14
- package/esm2015/core/option/optgroup.js +36 -33
- package/esm2015/core/option/option.js +181 -185
- package/esm2015/core/ripple/index.js +10 -14
- package/esm2015/core/ripple/ripple-ref.js +1 -1
- package/esm2015/core/ripple/ripple-renderer.js +1 -1
- package/esm2015/core/ripple/ripple.js +102 -106
- package/esm2015/core/selection/index.js +9 -13
- package/esm2015/core/selection/pseudo-checkbox/pseudo-checkbox.js +32 -36
- package/esm2015/core/testing/optgroup-harness.js +39 -43
- package/esm2015/core/testing/option-harness.js +51 -55
- package/esm2015/core/version.js +1 -1
- package/esm2015/datepicker/calendar-body.js +214 -218
- package/esm2015/datepicker/calendar.js +295 -303
- package/esm2015/datepicker/date-range-input-parts.js +214 -229
- package/esm2015/datepicker/date-range-input.js +244 -242
- package/esm2015/datepicker/date-range-picker.js +19 -23
- package/esm2015/datepicker/date-range-selection-strategy.js +31 -35
- package/esm2015/datepicker/date-selection-model.js +110 -122
- package/esm2015/datepicker/datepicker-base.js +418 -426
- package/esm2015/datepicker/datepicker-input-base.js +227 -224
- package/esm2015/datepicker/datepicker-input.js +111 -115
- package/esm2015/datepicker/datepicker-intl.js +37 -41
- package/esm2015/datepicker/datepicker-module.js +62 -66
- package/esm2015/datepicker/datepicker-toggle.js +81 -89
- package/esm2015/datepicker/datepicker.js +13 -17
- package/esm2015/datepicker/month-view.js +283 -287
- package/esm2015/datepicker/multi-year-view.js +198 -202
- package/esm2015/datepicker/public-api.js +2 -2
- package/esm2015/datepicker/year-view.js +220 -224
- package/esm2015/dialog/dialog-container.js +175 -164
- package/esm2015/dialog/dialog-content-directives.js +105 -114
- package/esm2015/dialog/dialog-module.js +32 -36
- package/esm2015/dialog/dialog-ref.js +17 -3
- package/esm2015/dialog/dialog.js +236 -240
- package/esm2015/dialog/testing/dialog-harness.js +58 -62
- package/esm2015/divider/divider-module.js +10 -14
- package/esm2015/divider/divider.js +33 -37
- package/esm2015/divider/testing/divider-harness.js +16 -20
- package/esm2015/expansion/accordion.js +73 -77
- package/esm2015/expansion/expansion-module.js +26 -30
- package/esm2015/expansion/expansion-panel-content.js +13 -17
- package/esm2015/expansion/expansion-panel-header.js +168 -180
- package/esm2015/expansion/expansion-panel.js +144 -152
- package/esm2015/expansion/testing/accordion-harness.js +24 -28
- package/esm2015/expansion/testing/expansion-harness.js +136 -134
- package/esm2015/form-field/error.js +26 -23
- package/esm2015/form-field/form-field-control.js +6 -10
- package/esm2015/form-field/form-field-module.js +31 -35
- package/esm2015/form-field/form-field.js +407 -409
- package/esm2015/form-field/hint.js +35 -29
- package/esm2015/form-field/label.js +8 -12
- package/esm2015/form-field/placeholder.js +8 -12
- package/esm2015/form-field/prefix.js +16 -13
- package/esm2015/form-field/suffix.js +16 -13
- package/esm2015/form-field/testing/form-field-harness.js +220 -206
- package/esm2015/grid-list/grid-list-module.js +26 -30
- package/esm2015/grid-list/grid-list.js +108 -112
- package/esm2015/grid-list/grid-tile.js +91 -111
- package/esm2015/grid-list/testing/grid-list-harness.js +62 -66
- package/esm2015/grid-list/testing/grid-tile-harness.js +69 -73
- package/esm2015/grid-list/tile-styler.js +1 -1
- package/esm2015/icon/icon-module.js +10 -14
- package/esm2015/icon/icon-registry.js +406 -410
- package/esm2015/icon/icon.js +228 -232
- package/esm2015/icon/testing/fake-icon-registry.js +66 -74
- package/esm2015/input/autosize.js +30 -34
- package/esm2015/input/input-module.js +21 -25
- package/esm2015/input/input.js +305 -284
- package/esm2015/input/testing/input-harness.js +129 -123
- package/esm2015/list/list-module.js +32 -36
- package/esm2015/list/list.js +165 -189
- package/esm2015/list/selection-list.js +503 -511
- package/esm2015/list/testing/action-list-harness.js +55 -57
- package/esm2015/list/testing/list-harness.js +31 -39
- package/esm2015/list/testing/list-item-harness-base.js +13 -17
- package/esm2015/list/testing/nav-list-harness.js +62 -64
- package/esm2015/list/testing/selection-list-harness.js +136 -138
- package/esm2015/menu/menu-content.js +74 -71
- package/esm2015/menu/menu-item.js +119 -123
- package/esm2015/menu/menu-module.js +29 -37
- package/esm2015/menu/menu-panel.js +1 -1
- package/esm2015/menu/menu-trigger.js +402 -405
- package/esm2015/menu/menu.js +329 -339
- package/esm2015/menu/testing/menu-harness.js +193 -189
- package/esm2015/paginator/paginator-intl.js +36 -40
- package/esm2015/paginator/paginator-module.js +16 -20
- package/esm2015/paginator/paginator.js +205 -209
- package/esm2015/paginator/testing/paginator-harness.js +91 -95
- package/esm2015/progress-bar/progress-bar-module.js +10 -14
- package/esm2015/progress-bar/progress-bar.js +114 -118
- package/esm2015/progress-bar/testing/progress-bar-harness.js +27 -31
- package/esm2015/progress-spinner/progress-spinner-module.js +17 -21
- package/esm2015/progress-spinner/progress-spinner.js +181 -189
- package/esm2015/progress-spinner/testing/progress-spinner-harness.js +28 -32
- package/esm2015/radio/radio-module.js +10 -14
- package/esm2015/radio/radio.js +437 -444
- package/esm2015/radio/testing/radio-harness.js +241 -243
- package/esm2015/select/select-module.js +23 -27
- package/esm2015/select/select.js +917 -918
- package/esm2015/select/testing/select-harness.js +138 -136
- package/esm2015/sidenav/drawer.js +632 -620
- package/esm2015/sidenav/sidenav-module.js +31 -35
- package/esm2015/sidenav/sidenav.js +104 -116
- package/esm2015/sidenav/testing/drawer-harness.js +40 -44
- package/esm2015/sidenav/testing/sidenav-harness.js +20 -24
- package/esm2015/slide-toggle/slide-toggle-module.js +27 -35
- package/esm2015/slide-toggle/slide-toggle-required-validator.js +9 -13
- package/esm2015/slide-toggle/slide-toggle.js +184 -188
- package/esm2015/slide-toggle/testing/slide-toggle-harness.js +123 -121
- package/esm2015/slider/slider-module.js +10 -14
- package/esm2015/slider/slider.js +640 -644
- package/esm2015/slider/testing/slider-harness.js +129 -127
- package/esm2015/snack-bar/simple-snack-bar.js +32 -36
- package/esm2015/snack-bar/snack-bar-container.js +144 -148
- package/esm2015/snack-bar/snack-bar-module.js +17 -21
- package/esm2015/snack-bar/snack-bar-ref.js +1 -1
- package/esm2015/snack-bar/snack-bar.js +208 -205
- package/esm2015/snack-bar/testing/snack-bar-harness.js +112 -116
- package/esm2015/sort/sort-header-intl.js +21 -21
- package/esm2015/sort/sort-header.js +200 -194
- package/esm2015/sort/sort-module.js +11 -15
- package/esm2015/sort/sort.js +92 -96
- package/esm2015/sort/testing/sort-harness.js +28 -32
- package/esm2015/sort/testing/sort-header-harness.js +66 -67
- package/esm2015/stepper/step-header.js +78 -82
- package/esm2015/stepper/step-label.js +8 -12
- package/esm2015/stepper/stepper-button.js +23 -31
- package/esm2015/stepper/stepper-icon.js +16 -20
- package/esm2015/stepper/stepper-intl.js +15 -19
- package/esm2015/stepper/stepper-module.js +40 -44
- package/esm2015/stepper/stepper.js +139 -155
- package/esm2015/table/cell.js +94 -122
- package/esm2015/table/row.js +90 -118
- package/esm2015/table/table-module.js +13 -17
- package/esm2015/table/table.js +26 -30
- package/esm2015/table/testing/cell-harness.js +56 -68
- package/esm2015/table/testing/row-harness.js +90 -102
- package/esm2015/table/testing/table-harness.js +65 -69
- package/esm2015/table/text-column.js +17 -21
- package/esm2015/tabs/index.js +4 -2
- package/esm2015/tabs/ink-bar.js +55 -59
- package/esm2015/tabs/paginated-tab-header.js +415 -419
- package/esm2015/tabs/tab-body.js +179 -191
- package/esm2015/tabs/tab-content.js +21 -16
- package/esm2015/tabs/tab-group.js +263 -271
- package/esm2015/tabs/tab-header.js +69 -77
- package/esm2015/tabs/tab-label-wrapper.js +29 -33
- package/esm2015/tabs/tab-label.js +16 -13
- package/esm2015/tabs/tab-nav-bar/tab-nav-bar.js +199 -215
- package/esm2015/tabs/tab.js +80 -83
- package/esm2015/tabs/tabs-module.js +38 -42
- package/esm2015/tabs/testing/tab-group-harness.js +52 -56
- package/esm2015/tabs/testing/tab-harness.js +78 -82
- package/esm2015/toolbar/testing/index.js +9 -0
- package/esm2015/toolbar/testing/public-api.js +10 -0
- package/esm2015/toolbar/testing/testing.externs.js +0 -0
- package/esm2015/toolbar/testing/toolbar-harness-filters.js +8 -0
- package/esm2015/toolbar/testing/toolbar-harness.js +47 -0
- package/esm2015/toolbar/toolbar-module.js +10 -14
- package/esm2015/toolbar/toolbar.js +61 -69
- package/esm2015/tooltip/testing/tooltip-harness.js +43 -47
- package/esm2015/tooltip/tooltip-module.js +17 -21
- package/esm2015/tooltip/tooltip.js +502 -497
- package/esm2015/tree/data-source/flat-data-source.js +1 -1
- package/esm2015/tree/node.js +99 -111
- package/esm2015/tree/outlet.js +19 -23
- package/esm2015/tree/padding.js +13 -17
- package/esm2015/tree/toggle.js +15 -19
- package/esm2015/tree/tree-module.js +10 -14
- package/esm2015/tree/tree.js +23 -27
- package/expansion/testing/expansion-harness.d.ts +2 -0
- package/fesm2015/autocomplete/testing.js +98 -95
- package/fesm2015/autocomplete/testing.js.map +1 -1
- package/fesm2015/autocomplete.js +677 -687
- package/fesm2015/autocomplete.js.map +1 -1
- package/fesm2015/badge/testing.js +73 -76
- package/fesm2015/badge/testing.js.map +1 -1
- package/fesm2015/badge.js +195 -201
- package/fesm2015/badge.js.map +1 -1
- package/fesm2015/bottom-sheet/testing.js +28 -31
- package/fesm2015/bottom-sheet/testing.js.map +1 -1
- package/fesm2015/bottom-sheet.js +297 -306
- package/fesm2015/bottom-sheet.js.map +1 -1
- package/fesm2015/button/testing.js +59 -56
- package/fesm2015/button/testing.js.map +1 -1
- package/fesm2015/button-toggle/testing.js +155 -155
- package/fesm2015/button-toggle/testing.js.map +1 -1
- package/fesm2015/button-toggle.js +377 -378
- package/fesm2015/button-toggle.js.map +1 -1
- package/fesm2015/button.js +129 -133
- package/fesm2015/button.js.map +1 -1
- package/fesm2015/card/testing.js +79 -0
- package/fesm2015/card/testing.js.map +1 -0
- package/fesm2015/card.js +175 -220
- package/fesm2015/card.js.map +1 -1
- package/fesm2015/checkbox/testing.js +149 -146
- package/fesm2015/checkbox/testing.js.map +1 -1
- package/fesm2015/checkbox.js +342 -354
- package/fesm2015/checkbox.js.map +1 -1
- package/fesm2015/chips.js +1039 -1039
- package/fesm2015/chips.js.map +1 -1
- package/fesm2015/core/testing.js +88 -94
- package/fesm2015/core/testing.js.map +1 -1
- package/fesm2015/core.js +729 -773
- package/fesm2015/core.js.map +1 -1
- package/fesm2015/datepicker.js +2821 -2884
- package/fesm2015/datepicker.js.map +1 -1
- package/fesm2015/dialog/testing.js +57 -60
- package/fesm2015/dialog/testing.js.map +1 -1
- package/fesm2015/dialog.js +564 -549
- package/fesm2015/dialog.js.map +1 -1
- package/fesm2015/divider/testing.js +15 -18
- package/fesm2015/divider/testing.js.map +1 -1
- package/fesm2015/divider.js +41 -47
- package/fesm2015/divider.js.map +1 -1
- package/fesm2015/expansion/testing.js +159 -159
- package/fesm2015/expansion/testing.js.map +1 -1
- package/fesm2015/expansion.js +422 -446
- package/fesm2015/expansion.js.map +1 -1
- package/fesm2015/form-field/testing.js +219 -204
- package/fesm2015/form-field/testing.js.map +1 -1
- package/fesm2015/form-field.js +538 -532
- package/fesm2015/form-field.js.map +1 -1
- package/fesm2015/grid-list/testing.js +129 -135
- package/fesm2015/grid-list/testing.js.map +1 -1
- package/fesm2015/grid-list.js +221 -242
- package/fesm2015/grid-list.js.map +1 -1
- package/fesm2015/icon/testing.js +65 -71
- package/fesm2015/icon/testing.js.map +1 -1
- package/fesm2015/icon.js +660 -669
- package/fesm2015/icon.js.map +1 -1
- package/fesm2015/input/testing.js +128 -121
- package/fesm2015/input/testing.js.map +1 -1
- package/fesm2015/input.js +353 -337
- package/fesm2015/input.js.map +1 -1
- package/fesm2015/list/testing.js +298 -307
- package/fesm2015/list/testing.js.map +1 -1
- package/fesm2015/list.js +698 -725
- package/fesm2015/list.js.map +1 -1
- package/fesm2015/menu/testing.js +192 -186
- package/fesm2015/menu/testing.js.map +1 -1
- package/fesm2015/menu.js +948 -962
- package/fesm2015/menu.js.map +1 -1
- package/fesm2015/paginator/testing.js +90 -93
- package/fesm2015/paginator/testing.js.map +1 -1
- package/fesm2015/paginator.js +247 -256
- package/fesm2015/paginator.js.map +1 -1
- package/fesm2015/progress-bar/testing.js +26 -29
- package/fesm2015/progress-bar/testing.js.map +1 -1
- package/fesm2015/progress-bar.js +122 -128
- package/fesm2015/progress-bar.js.map +1 -1
- package/fesm2015/progress-spinner/testing.js +27 -30
- package/fesm2015/progress-spinner/testing.js.map +1 -1
- package/fesm2015/progress-spinner.js +196 -205
- package/fesm2015/progress-spinner.js.map +1 -1
- package/fesm2015/radio/testing.js +240 -240
- package/fesm2015/radio/testing.js.map +1 -1
- package/fesm2015/radio.js +447 -453
- package/fesm2015/radio.js.map +1 -1
- package/fesm2015/select/testing.js +137 -134
- package/fesm2015/select/testing.js.map +1 -1
- package/fesm2015/select.js +939 -941
- package/fesm2015/select.js.map +1 -1
- package/fesm2015/sidenav/testing.js +58 -64
- package/fesm2015/sidenav/testing.js.map +1 -1
- package/fesm2015/sidenav.js +765 -762
- package/fesm2015/sidenav.js.map +1 -1
- package/fesm2015/slide-toggle/testing.js +122 -119
- package/fesm2015/slide-toggle/testing.js.map +1 -1
- package/fesm2015/slide-toggle.js +217 -229
- package/fesm2015/slide-toggle.js.map +1 -1
- package/fesm2015/slider/testing.js +128 -125
- package/fesm2015/slider/testing.js.map +1 -1
- package/fesm2015/slider.js +648 -654
- package/fesm2015/slider.js.map +1 -1
- package/fesm2015/snack-bar/testing.js +111 -114
- package/fesm2015/snack-bar/testing.js.map +1 -1
- package/fesm2015/snack-bar.js +426 -431
- package/fesm2015/snack-bar.js.map +1 -1
- package/fesm2015/sort/testing.js +92 -95
- package/fesm2015/sort/testing.js.map +1 -1
- package/fesm2015/sort.js +320 -318
- package/fesm2015/sort.js.map +1 -1
- package/fesm2015/stepper.js +312 -345
- package/fesm2015/stepper.js.map +1 -1
- package/fesm2015/table/testing.js +208 -229
- package/fesm2015/table/testing.js.map +1 -1
- package/fesm2015/table.js +235 -286
- package/fesm2015/table.js.map +1 -1
- package/fesm2015/tabs/testing.js +128 -134
- package/fesm2015/tabs/testing.js.map +1 -1
- package/fesm2015/tabs.js +1362 -1399
- package/fesm2015/tabs.js.map +1 -1
- package/fesm2015/toolbar/testing.js +74 -0
- package/fesm2015/toolbar/testing.js.map +1 -0
- package/fesm2015/toolbar.js +69 -78
- package/fesm2015/toolbar.js.map +1 -1
- package/fesm2015/tooltip/testing.js +42 -45
- package/fesm2015/tooltip/testing.js.map +1 -1
- package/fesm2015/tooltip.js +517 -513
- package/fesm2015/tooltip.js.map +1 -1
- package/fesm2015/tree.js +173 -197
- package/fesm2015/tree.js.map +1 -1
- package/form-field/error.d.ts +7 -0
- package/form-field/hint.d.ts +10 -0
- package/form-field/index.metadata.json +1 -1
- package/form-field/prefix.d.ts +7 -0
- package/form-field/suffix.d.ts +7 -0
- package/form-field/testing/form-field-harness.d.ts +8 -0
- package/grid-list/grid-list.d.ts +2 -1
- package/grid-list/index.metadata.json +1 -1
- package/grid-list/tile-styler.d.ts +10 -5
- package/input/_input-theme.scss +2 -2
- package/input/index.metadata.json +1 -1
- package/input/input.d.ts +6 -2
- package/input/testing/input-harness.d.ts +2 -0
- package/list/index.metadata.json +1 -1
- package/list/testing/action-list-harness.d.ts +2 -0
- package/list/testing/nav-list-harness.d.ts +2 -0
- package/list/testing/selection-list-harness.d.ts +2 -0
- package/menu/index.metadata.json +1 -1
- package/menu/menu-content.d.ts +7 -1
- package/menu/menu-panel.d.ts +1 -0
- package/menu/menu.d.ts +4 -0
- package/menu/testing/menu-harness.d.ts +4 -0
- package/package.json +6 -6
- 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-spinner/index.metadata.json +1 -1
- package/radio/index.metadata.json +1 -1
- package/radio/radio.d.ts +6 -0
- package/radio/testing/radio-harness.d.ts +2 -0
- package/schematics/migration.json +5 -0
- package/schematics/ng-add/index.js +2 -2
- package/schematics/ng-generate/navigation/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html.template +3 -3
- package/schematics/ng-generate/navigation/schema.json +5 -0
- package/schematics/ng-update/data/index.js +1 -1
- package/schematics/ng-update/index.d.ts +2 -0
- package/schematics/ng-update/index.js +7 -2
- package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.js +639 -639
- package/schematics/ng-update/migrations/misc-ripples-v7/ripple-speed-factor-migration.js +1 -1
- package/select/index.metadata.json +1 -1
- package/select/select.d.ts +6 -0
- package/select/testing/select-harness.d.ts +2 -0
- package/sidenav/drawer.d.ts +15 -3
- package/sidenav/index.metadata.json +1 -1
- package/slide-toggle/index.metadata.json +1 -1
- package/slide-toggle/testing/slide-toggle-harness.d.ts +2 -0
- package/slider/testing/slider-harness.d.ts +2 -0
- package/snack-bar/index.metadata.json +1 -1
- package/snack-bar/simple-snack-bar.d.ts +13 -1
- package/snack-bar/snack-bar-container.d.ts +16 -3
- package/snack-bar/snack-bar-ref.d.ts +3 -3
- package/snack-bar/snack-bar.d.ts +10 -3
- package/sort/index.metadata.json +1 -1
- package/sort/sort-header-intl.d.ts +5 -1
- package/sort/sort-header.d.ts +3 -1
- package/sort/testing/sort-header-harness.d.ts +6 -2
- package/tabs/index.d.ts +3 -1
- package/tabs/index.metadata.json +1 -1
- package/tabs/tab-content.d.ts +7 -1
- package/tabs/tab-label.d.ts +7 -0
- package/toolbar/testing/index.d.ts +8 -0
- package/toolbar/testing/package.json +9 -0
- package/toolbar/testing/public-api.d.ts +9 -0
- package/toolbar/testing/toolbar-harness-filters.d.ts +13 -0
- package/toolbar/testing/toolbar-harness.d.ts +31 -0
- package/tooltip/index.metadata.json +1 -1
- package/tooltip/tooltip.d.ts +1 -0
- package/tree/data-source/flat-data-source.d.ts +4 -4
- package/tree/index.metadata.json +1 -1
package/fesm2015/sort.js
CHANGED
|
@@ -2,6 +2,7 @@ import { EventEmitter, isDevMode, Directive, Input, Output, ɵɵdefineInjectable
|
|
|
2
2
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
3
3
|
import { mixinInitialized, mixinDisabled, AnimationDurations, AnimationCurves } from '@angular/material/core';
|
|
4
4
|
import { FocusMonitor } from '@angular/cdk/a11y';
|
|
5
|
+
import { SPACE, ENTER } from '@angular/cdk/keycodes';
|
|
5
6
|
import { Subject, merge } from 'rxjs';
|
|
6
7
|
import { trigger, state, style, transition, animate, keyframes, query, animateChild } from '@angular/animations';
|
|
7
8
|
import { CommonModule } from '@angular/common';
|
|
@@ -43,110 +44,107 @@ class MatSortBase {
|
|
|
43
44
|
}
|
|
44
45
|
const _MatSortMixinBase = mixinInitialized(mixinDisabled(MatSortBase));
|
|
45
46
|
/** Container for MatSortables to manage the sort state and provide default sort parameters. */
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
this._stateChanges = new Subject();
|
|
54
|
-
/**
|
|
55
|
-
* The direction to set when an MatSortable is initially sorted.
|
|
56
|
-
* May be overriden by the MatSortable's sort start.
|
|
57
|
-
*/
|
|
58
|
-
this.start = 'asc';
|
|
59
|
-
this._direction = '';
|
|
60
|
-
/** Event emitted when the user changes either the active sort or sort direction. */
|
|
61
|
-
this.sortChange = new EventEmitter();
|
|
62
|
-
}
|
|
63
|
-
/** The sort direction of the currently active MatSortable. */
|
|
64
|
-
get direction() { return this._direction; }
|
|
65
|
-
set direction(direction) {
|
|
66
|
-
if (isDevMode() && direction && direction !== 'asc' && direction !== 'desc') {
|
|
67
|
-
throw getSortInvalidDirectionError(direction);
|
|
68
|
-
}
|
|
69
|
-
this._direction = direction;
|
|
70
|
-
}
|
|
47
|
+
class MatSort extends _MatSortMixinBase {
|
|
48
|
+
constructor() {
|
|
49
|
+
super(...arguments);
|
|
50
|
+
/** Collection of all registered sortables that this directive manages. */
|
|
51
|
+
this.sortables = new Map();
|
|
52
|
+
/** Used to notify any child components listening to state changes. */
|
|
53
|
+
this._stateChanges = new Subject();
|
|
71
54
|
/**
|
|
72
|
-
*
|
|
73
|
-
* May be overriden by the MatSortable's
|
|
55
|
+
* The direction to set when an MatSortable is initially sorted.
|
|
56
|
+
* May be overriden by the MatSortable's sort start.
|
|
74
57
|
*/
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
if (this.sortables.has(sortable.id)) {
|
|
86
|
-
throw getSortDuplicateSortableIdError(sortable.id);
|
|
87
|
-
}
|
|
88
|
-
this.sortables.set(sortable.id, sortable);
|
|
58
|
+
this.start = 'asc';
|
|
59
|
+
this._direction = '';
|
|
60
|
+
/** Event emitted when the user changes either the active sort or sort direction. */
|
|
61
|
+
this.sortChange = new EventEmitter();
|
|
62
|
+
}
|
|
63
|
+
/** The sort direction of the currently active MatSortable. */
|
|
64
|
+
get direction() { return this._direction; }
|
|
65
|
+
set direction(direction) {
|
|
66
|
+
if (isDevMode() && direction && direction !== 'asc' && direction !== 'desc') {
|
|
67
|
+
throw getSortInvalidDirectionError(direction);
|
|
89
68
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
69
|
+
this._direction = direction;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Whether to disable the user from clearing the sort by finishing the sort direction cycle.
|
|
73
|
+
* May be overriden by the MatSortable's disable clear input.
|
|
74
|
+
*/
|
|
75
|
+
get disableClear() { return this._disableClear; }
|
|
76
|
+
set disableClear(v) { this._disableClear = coerceBooleanProperty(v); }
|
|
77
|
+
/**
|
|
78
|
+
* Register function to be used by the contained MatSortables. Adds the MatSortable to the
|
|
79
|
+
* collection of MatSortables.
|
|
80
|
+
*/
|
|
81
|
+
register(sortable) {
|
|
82
|
+
if (!sortable.id) {
|
|
83
|
+
throw getSortHeaderMissingIdError();
|
|
96
84
|
}
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
if (this.active != sortable.id) {
|
|
100
|
-
this.active = sortable.id;
|
|
101
|
-
this.direction = sortable.start ? sortable.start : this.start;
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
this.direction = this.getNextSortDirection(sortable);
|
|
105
|
-
}
|
|
106
|
-
this.sortChange.emit({ active: this.active, direction: this.direction });
|
|
85
|
+
if (this.sortables.has(sortable.id)) {
|
|
86
|
+
throw getSortDuplicateSortableIdError(sortable.id);
|
|
107
87
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
88
|
+
this.sortables.set(sortable.id, sortable);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Unregister function to be used by the contained MatSortables. Removes the MatSortable from the
|
|
92
|
+
* collection of contained MatSortables.
|
|
93
|
+
*/
|
|
94
|
+
deregister(sortable) {
|
|
95
|
+
this.sortables.delete(sortable.id);
|
|
96
|
+
}
|
|
97
|
+
/** Sets the active sort id and determines the new sort direction. */
|
|
98
|
+
sort(sortable) {
|
|
99
|
+
if (this.active != sortable.id) {
|
|
100
|
+
this.active = sortable.id;
|
|
101
|
+
this.direction = sortable.start ? sortable.start : this.start;
|
|
122
102
|
}
|
|
123
|
-
|
|
124
|
-
this.
|
|
103
|
+
else {
|
|
104
|
+
this.direction = this.getNextSortDirection(sortable);
|
|
125
105
|
}
|
|
126
|
-
|
|
127
|
-
|
|
106
|
+
this.sortChange.emit({ active: this.active, direction: this.direction });
|
|
107
|
+
}
|
|
108
|
+
/** Returns the next sort direction of the active sortable, checking for potential overrides. */
|
|
109
|
+
getNextSortDirection(sortable) {
|
|
110
|
+
if (!sortable) {
|
|
111
|
+
return '';
|
|
128
112
|
}
|
|
129
|
-
|
|
130
|
-
|
|
113
|
+
// Get the sort direction cycle with the potential sortable overrides.
|
|
114
|
+
const disableClear = sortable.disableClear != null ? sortable.disableClear : this.disableClear;
|
|
115
|
+
let sortDirectionCycle = getSortDirectionCycle(sortable.start || this.start, disableClear);
|
|
116
|
+
// Get and return the next direction in the cycle
|
|
117
|
+
let nextDirectionIndex = sortDirectionCycle.indexOf(this.direction) + 1;
|
|
118
|
+
if (nextDirectionIndex >= sortDirectionCycle.length) {
|
|
119
|
+
nextDirectionIndex = 0;
|
|
131
120
|
}
|
|
121
|
+
return sortDirectionCycle[nextDirectionIndex];
|
|
122
|
+
}
|
|
123
|
+
ngOnInit() {
|
|
124
|
+
this._markInitialized();
|
|
125
|
+
}
|
|
126
|
+
ngOnChanges() {
|
|
127
|
+
this._stateChanges.next();
|
|
128
|
+
}
|
|
129
|
+
ngOnDestroy() {
|
|
130
|
+
this._stateChanges.complete();
|
|
132
131
|
}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
})();
|
|
132
|
+
}
|
|
133
|
+
MatSort.decorators = [
|
|
134
|
+
{ type: Directive, args: [{
|
|
135
|
+
selector: '[matSort]',
|
|
136
|
+
exportAs: 'matSort',
|
|
137
|
+
host: { 'class': 'mat-sort' },
|
|
138
|
+
inputs: ['disabled: matSortDisabled']
|
|
139
|
+
},] }
|
|
140
|
+
];
|
|
141
|
+
MatSort.propDecorators = {
|
|
142
|
+
active: [{ type: Input, args: ['matSortActive',] }],
|
|
143
|
+
start: [{ type: Input, args: ['matSortStart',] }],
|
|
144
|
+
direction: [{ type: Input, args: ['matSortDirection',] }],
|
|
145
|
+
disableClear: [{ type: Input, args: ['matSortDisableClear',] }],
|
|
146
|
+
sortChange: [{ type: Output, args: ['matSortChange',] }]
|
|
147
|
+
};
|
|
150
148
|
/** Returns the sort direction cycle to use given the provided parameters of order and clear. */
|
|
151
149
|
function getSortDirectionCycle(start, disableClear) {
|
|
152
150
|
let sortOrder = ['asc', 'desc'];
|
|
@@ -252,26 +250,27 @@ const matSortAnimations = {
|
|
|
252
250
|
* To modify the labels and text displayed, create a new instance of MatSortHeaderIntl and
|
|
253
251
|
* include it in a custom provider.
|
|
254
252
|
*/
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
253
|
+
class MatSortHeaderIntl {
|
|
254
|
+
constructor() {
|
|
255
|
+
/**
|
|
256
|
+
* Stream that emits whenever the labels here are changed. Use this to notify
|
|
257
|
+
* components if the labels have changed after initialization.
|
|
258
|
+
*/
|
|
259
|
+
this.changes = new Subject();
|
|
260
|
+
/**
|
|
261
|
+
* ARIA label for the sorting button.
|
|
262
|
+
* @deprecated Not used anymore. To be removed.
|
|
263
|
+
* @breaking-change 8.0.0
|
|
264
|
+
*/
|
|
265
|
+
this.sortButtonLabel = (id) => {
|
|
266
|
+
return `Change sorting for ${id}`;
|
|
267
|
+
};
|
|
268
268
|
}
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
]
|
|
273
|
-
|
|
274
|
-
})();
|
|
269
|
+
}
|
|
270
|
+
MatSortHeaderIntl.ɵprov = ɵɵdefineInjectable({ factory: function MatSortHeaderIntl_Factory() { return new MatSortHeaderIntl(); }, token: MatSortHeaderIntl, providedIn: "root" });
|
|
271
|
+
MatSortHeaderIntl.decorators = [
|
|
272
|
+
{ type: Injectable, args: [{ providedIn: 'root' },] }
|
|
273
|
+
];
|
|
275
274
|
/** @docs-private */
|
|
276
275
|
function MAT_SORT_HEADER_INTL_PROVIDER_FACTORY(parentIntl) {
|
|
277
276
|
return parentIntl || new MatSortHeaderIntl();
|
|
@@ -305,214 +304,220 @@ const _MatSortHeaderMixinBase = mixinDisabled(MatSortHeaderBase);
|
|
|
305
304
|
* If used on header cells in a CdkTable, it will automatically default its id from its containing
|
|
306
305
|
* column definition.
|
|
307
306
|
*/
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
this._elementRef = _elementRef;
|
|
321
|
-
/**
|
|
322
|
-
* Flag set to true when the indicator should be displayed while the sort is not active. Used to
|
|
323
|
-
* provide an affordance that the header is sortable by showing on focus and hover.
|
|
324
|
-
*/
|
|
325
|
-
this._showIndicatorHint = false;
|
|
326
|
-
/** The direction the arrow should be facing according to the current state. */
|
|
327
|
-
this._arrowDirection = '';
|
|
328
|
-
/**
|
|
329
|
-
* Whether the view state animation should show the transition between the `from` and `to` states.
|
|
330
|
-
*/
|
|
331
|
-
this._disableViewStateAnimation = false;
|
|
332
|
-
/** Sets the position of the arrow that displays when sorted. */
|
|
333
|
-
this.arrowPosition = 'after';
|
|
334
|
-
if (!_sort) {
|
|
335
|
-
throw getSortHeaderNotContainedWithinSortError();
|
|
336
|
-
}
|
|
337
|
-
this._rerenderSubscription = merge(_sort.sortChange, _sort._stateChanges, _intl.changes)
|
|
338
|
-
.subscribe(() => {
|
|
339
|
-
if (this._isSorted()) {
|
|
340
|
-
this._updateArrowDirection();
|
|
341
|
-
}
|
|
342
|
-
// If this header was recently active and now no longer sorted, animate away the arrow.
|
|
343
|
-
if (!this._isSorted() && this._viewState && this._viewState.toState === 'active') {
|
|
344
|
-
this._disableViewStateAnimation = false;
|
|
345
|
-
this._setAnimationTransitionState({ fromState: 'active', toState: this._arrowDirection });
|
|
346
|
-
}
|
|
347
|
-
changeDetectorRef.markForCheck();
|
|
348
|
-
});
|
|
349
|
-
}
|
|
350
|
-
/** Overrides the disable clear value of the containing MatSort for this MatSortable. */
|
|
351
|
-
get disableClear() { return this._disableClear; }
|
|
352
|
-
set disableClear(v) { this._disableClear = coerceBooleanProperty(v); }
|
|
353
|
-
ngOnInit() {
|
|
354
|
-
if (!this.id && this._columnDef) {
|
|
355
|
-
this.id = this._columnDef.name;
|
|
356
|
-
}
|
|
357
|
-
// Initialize the direction of the arrow and set the view state to be immediately that state.
|
|
358
|
-
this._updateArrowDirection();
|
|
359
|
-
this._setAnimationTransitionState({ toState: this._isSorted() ? 'active' : this._arrowDirection });
|
|
360
|
-
this._sort.register(this);
|
|
361
|
-
}
|
|
362
|
-
ngAfterViewInit() {
|
|
363
|
-
// We use the focus monitor because we also want to style
|
|
364
|
-
// things differently based on the focus origin.
|
|
365
|
-
this._focusMonitor.monitor(this._elementRef, true)
|
|
366
|
-
.subscribe(origin => this._setIndicatorHintVisible(!!origin));
|
|
367
|
-
}
|
|
368
|
-
ngOnDestroy() {
|
|
369
|
-
this._focusMonitor.stopMonitoring(this._elementRef);
|
|
370
|
-
this._sort.deregister(this);
|
|
371
|
-
this._rerenderSubscription.unsubscribe();
|
|
372
|
-
}
|
|
307
|
+
class MatSortHeader extends _MatSortHeaderMixinBase {
|
|
308
|
+
constructor(_intl, changeDetectorRef, _sort, _columnDef, _focusMonitor, _elementRef) {
|
|
309
|
+
// Note that we use a string token for the `_columnDef`, because the value is provided both by
|
|
310
|
+
// `material/table` and `cdk/table` and we can't have the CDK depending on Material,
|
|
311
|
+
// and we want to avoid having the sort header depending on the CDK table because
|
|
312
|
+
// of this single reference.
|
|
313
|
+
super();
|
|
314
|
+
this._intl = _intl;
|
|
315
|
+
this._sort = _sort;
|
|
316
|
+
this._columnDef = _columnDef;
|
|
317
|
+
this._focusMonitor = _focusMonitor;
|
|
318
|
+
this._elementRef = _elementRef;
|
|
373
319
|
/**
|
|
374
|
-
*
|
|
375
|
-
*
|
|
320
|
+
* Flag set to true when the indicator should be displayed while the sort is not active. Used to
|
|
321
|
+
* provide an affordance that the header is sortable by showing on focus and hover.
|
|
376
322
|
*/
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
return;
|
|
381
|
-
}
|
|
382
|
-
this._showIndicatorHint = visible;
|
|
383
|
-
if (!this._isSorted()) {
|
|
384
|
-
this._updateArrowDirection();
|
|
385
|
-
if (this._showIndicatorHint) {
|
|
386
|
-
this._setAnimationTransitionState({ fromState: this._arrowDirection, toState: 'hint' });
|
|
387
|
-
}
|
|
388
|
-
else {
|
|
389
|
-
this._setAnimationTransitionState({ fromState: 'hint', toState: this._arrowDirection });
|
|
390
|
-
}
|
|
391
|
-
}
|
|
392
|
-
}
|
|
323
|
+
this._showIndicatorHint = false;
|
|
324
|
+
/** The direction the arrow should be facing according to the current state. */
|
|
325
|
+
this._arrowDirection = '';
|
|
393
326
|
/**
|
|
394
|
-
*
|
|
395
|
-
* `disableViewStateAnimation` flag is set to true, the `fromState` will be ignored so that
|
|
396
|
-
* no animation appears.
|
|
327
|
+
* Whether the view state animation should show the transition between the `from` and `to` states.
|
|
397
328
|
*/
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
this._viewState = { toState: viewState.toState };
|
|
404
|
-
}
|
|
329
|
+
this._disableViewStateAnimation = false;
|
|
330
|
+
/** Sets the position of the arrow that displays when sorted. */
|
|
331
|
+
this.arrowPosition = 'after';
|
|
332
|
+
if (!_sort) {
|
|
333
|
+
throw getSortHeaderNotContainedWithinSortError();
|
|
405
334
|
}
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
if (this.
|
|
409
|
-
|
|
335
|
+
this._rerenderSubscription = merge(_sort.sortChange, _sort._stateChanges, _intl.changes)
|
|
336
|
+
.subscribe(() => {
|
|
337
|
+
if (this._isSorted()) {
|
|
338
|
+
this._updateArrowDirection();
|
|
410
339
|
}
|
|
411
|
-
this.
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
this.
|
|
340
|
+
// If this header was recently active and now no longer sorted, animate away the arrow.
|
|
341
|
+
if (!this._isSorted() && this._viewState && this._viewState.toState === 'active') {
|
|
342
|
+
this._disableViewStateAnimation = false;
|
|
343
|
+
this._setAnimationTransitionState({ fromState: 'active', toState: this._arrowDirection });
|
|
415
344
|
}
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
345
|
+
changeDetectorRef.markForCheck();
|
|
346
|
+
});
|
|
347
|
+
}
|
|
348
|
+
/** Overrides the disable clear value of the containing MatSort for this MatSortable. */
|
|
349
|
+
get disableClear() { return this._disableClear; }
|
|
350
|
+
set disableClear(v) { this._disableClear = coerceBooleanProperty(v); }
|
|
351
|
+
ngOnInit() {
|
|
352
|
+
if (!this.id && this._columnDef) {
|
|
353
|
+
this.id = this._columnDef.name;
|
|
423
354
|
}
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
355
|
+
// Initialize the direction of the arrow and set the view state to be immediately that state.
|
|
356
|
+
this._updateArrowDirection();
|
|
357
|
+
this._setAnimationTransitionState({ toState: this._isSorted() ? 'active' : this._arrowDirection });
|
|
358
|
+
this._sort.register(this);
|
|
359
|
+
}
|
|
360
|
+
ngAfterViewInit() {
|
|
361
|
+
// We use the focus monitor because we also want to style
|
|
362
|
+
// things differently based on the focus origin.
|
|
363
|
+
this._focusMonitor.monitor(this._elementRef, true)
|
|
364
|
+
.subscribe(origin => this._setIndicatorHintVisible(!!origin));
|
|
365
|
+
}
|
|
366
|
+
ngOnDestroy() {
|
|
367
|
+
this._focusMonitor.stopMonitoring(this._elementRef);
|
|
368
|
+
this._sort.deregister(this);
|
|
369
|
+
this._rerenderSubscription.unsubscribe();
|
|
370
|
+
}
|
|
371
|
+
/**
|
|
372
|
+
* Sets the "hint" state such that the arrow will be semi-transparently displayed as a hint to the
|
|
373
|
+
* user showing what the active sort will become. If set to false, the arrow will fade away.
|
|
374
|
+
*/
|
|
375
|
+
_setIndicatorHintVisible(visible) {
|
|
376
|
+
// No-op if the sort header is disabled - should not make the hint visible.
|
|
377
|
+
if (this._isDisabled() && visible) {
|
|
378
|
+
return;
|
|
428
379
|
}
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
380
|
+
this._showIndicatorHint = visible;
|
|
381
|
+
if (!this._isSorted()) {
|
|
382
|
+
this._updateArrowDirection();
|
|
383
|
+
if (this._showIndicatorHint) {
|
|
384
|
+
this._setAnimationTransitionState({ fromState: this._arrowDirection, toState: 'hint' });
|
|
385
|
+
}
|
|
386
|
+
else {
|
|
387
|
+
this._setAnimationTransitionState({ fromState: 'hint', toState: this._arrowDirection });
|
|
388
|
+
}
|
|
432
389
|
}
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
390
|
+
}
|
|
391
|
+
/**
|
|
392
|
+
* Sets the animation transition view state for the arrow's position and opacity. If the
|
|
393
|
+
* `disableViewStateAnimation` flag is set to true, the `fromState` will be ignored so that
|
|
394
|
+
* no animation appears.
|
|
395
|
+
*/
|
|
396
|
+
_setAnimationTransitionState(viewState) {
|
|
397
|
+
this._viewState = viewState;
|
|
398
|
+
// If the animation for arrow position state (opacity/translation) should be disabled,
|
|
399
|
+
// remove the fromState so that it jumps right to the toState.
|
|
400
|
+
if (this._disableViewStateAnimation) {
|
|
401
|
+
this._viewState = { toState: viewState.toState };
|
|
437
402
|
}
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
* preserving its direction, even though the next sort direction is actually different and should
|
|
446
|
-
* only be changed once the arrow displays again (hint or activation).
|
|
447
|
-
*/
|
|
448
|
-
_updateArrowDirection() {
|
|
449
|
-
this._arrowDirection = this._isSorted() ?
|
|
450
|
-
this._sort.direction :
|
|
451
|
-
(this.start || this._sort.start);
|
|
403
|
+
}
|
|
404
|
+
/** Triggers the sort on this sort header and removes the indicator hint. */
|
|
405
|
+
_toggleOnInteraction() {
|
|
406
|
+
this._sort.sort(this);
|
|
407
|
+
// Do not show the animation if the header was already shown in the right position.
|
|
408
|
+
if (this._viewState.toState === 'hint' || this._viewState.toState === 'active') {
|
|
409
|
+
this._disableViewStateAnimation = true;
|
|
452
410
|
}
|
|
453
|
-
|
|
454
|
-
|
|
411
|
+
// If the arrow is now sorted, animate the arrow into place. Otherwise, animate it away into
|
|
412
|
+
// the direction it is facing.
|
|
413
|
+
const viewState = this._isSorted() ?
|
|
414
|
+
{ fromState: this._arrowDirection, toState: 'active' } :
|
|
415
|
+
{ fromState: 'active', toState: this._arrowDirection };
|
|
416
|
+
this._setAnimationTransitionState(viewState);
|
|
417
|
+
this._showIndicatorHint = false;
|
|
418
|
+
}
|
|
419
|
+
_handleClick() {
|
|
420
|
+
if (!this._isDisabled()) {
|
|
421
|
+
this._toggleOnInteraction();
|
|
455
422
|
}
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
*/
|
|
462
|
-
_getAriaSortAttribute() {
|
|
463
|
-
if (!this._isSorted()) {
|
|
464
|
-
return null;
|
|
465
|
-
}
|
|
466
|
-
return this._sort.direction == 'asc' ? 'ascending' : 'descending';
|
|
423
|
+
}
|
|
424
|
+
_handleKeydown(event) {
|
|
425
|
+
if (!this._isDisabled() && (event.keyCode === SPACE || event.keyCode === ENTER)) {
|
|
426
|
+
event.preventDefault();
|
|
427
|
+
this._toggleOnInteraction();
|
|
467
428
|
}
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
429
|
+
}
|
|
430
|
+
/** Whether this MatSortHeader is currently sorted in either ascending or descending order. */
|
|
431
|
+
_isSorted() {
|
|
432
|
+
return this._sort.active == this.id &&
|
|
433
|
+
(this._sort.direction === 'asc' || this._sort.direction === 'desc');
|
|
434
|
+
}
|
|
435
|
+
/** Returns the animation state for the arrow direction (indicator and pointers). */
|
|
436
|
+
_getArrowDirectionState() {
|
|
437
|
+
return `${this._isSorted() ? 'active-' : ''}${this._arrowDirection}`;
|
|
438
|
+
}
|
|
439
|
+
/** Returns the arrow position state (opacity, translation). */
|
|
440
|
+
_getArrowViewState() {
|
|
441
|
+
const fromState = this._viewState.fromState;
|
|
442
|
+
return (fromState ? `${fromState}-to-` : '') + this._viewState.toState;
|
|
443
|
+
}
|
|
444
|
+
/**
|
|
445
|
+
* Updates the direction the arrow should be pointing. If it is not sorted, the arrow should be
|
|
446
|
+
* facing the start direction. Otherwise if it is sorted, the arrow should point in the currently
|
|
447
|
+
* active sorted direction. The reason this is updated through a function is because the direction
|
|
448
|
+
* should only be changed at specific times - when deactivated but the hint is displayed and when
|
|
449
|
+
* the sort is active and the direction changes. Otherwise the arrow's direction should linger
|
|
450
|
+
* in cases such as the sort becoming deactivated but we want to animate the arrow away while
|
|
451
|
+
* preserving its direction, even though the next sort direction is actually different and should
|
|
452
|
+
* only be changed once the arrow displays again (hint or activation).
|
|
453
|
+
*/
|
|
454
|
+
_updateArrowDirection() {
|
|
455
|
+
this._arrowDirection = this._isSorted() ?
|
|
456
|
+
this._sort.direction :
|
|
457
|
+
(this.start || this._sort.start);
|
|
458
|
+
}
|
|
459
|
+
_isDisabled() {
|
|
460
|
+
return this._sort.disabled || this.disabled;
|
|
461
|
+
}
|
|
462
|
+
/**
|
|
463
|
+
* Gets the aria-sort attribute that should be applied to this sort header. If this header
|
|
464
|
+
* is not sorted, returns null so that the attribute is removed from the host element. Aria spec
|
|
465
|
+
* says that the aria-sort property should only be present on one header at a time, so removing
|
|
466
|
+
* ensures this is true.
|
|
467
|
+
*/
|
|
468
|
+
_getAriaSortAttribute() {
|
|
469
|
+
if (!this._isSorted()) {
|
|
470
|
+
return 'none';
|
|
471
471
|
}
|
|
472
|
+
return this._sort.direction == 'asc' ? 'ascending' : 'descending';
|
|
472
473
|
}
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
}
|
|
474
|
+
/** Whether the arrow inside the sort header should be rendered. */
|
|
475
|
+
_renderArrow() {
|
|
476
|
+
return !this._isDisabled() || this._isSorted();
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
MatSortHeader.decorators = [
|
|
480
|
+
{ type: Component, args: [{
|
|
481
|
+
selector: '[mat-sort-header]',
|
|
482
|
+
exportAs: 'matSortHeader',
|
|
483
|
+
template: "<!--\n We set the `tabindex` on an element inside the table header, rather than the header itself,\n because of a bug in NVDA where having a `tabindex` on a `th` breaks keyboard navigation in the\n table (see https://github.com/nvaccess/nvda/issues/7718). This allows for the header to both\n be focusable, and have screen readers read out its `aria-sort` state. We prefer this approach\n over having a button with an `aria-label` inside the header, because the button's `aria-label`\n will be read out as the user is navigating the table's cell (see #13012).\n\n The approach is based off of: https://dequeuniversity.com/library/aria/tables/sf-sortable-grid\n-->\n<div class=\"mat-sort-header-container mat-focus-indicator\"\n [class.mat-sort-header-sorted]=\"_isSorted()\"\n [class.mat-sort-header-position-before]=\"arrowPosition == 'before'\"\n [attr.tabindex]=\"_isDisabled() ? null : 0\"\n role=\"button\">\n\n <!--\n TODO(crisbeto): this div isn't strictly necessary, but we have to keep it due to a large\n number of screenshot diff failures. It should be removed eventually. Note that the difference\n isn't visible with a shorter header, but once it breaks up into multiple lines, this element\n causes it to be center-aligned, whereas removing it will keep the text to the left.\n -->\n <div class=\"mat-sort-header-content\">\n <ng-content></ng-content>\n </div>\n\n <!-- Disable animations while a current animation is running -->\n <div class=\"mat-sort-header-arrow\"\n *ngIf=\"_renderArrow()\"\n [@arrowOpacity]=\"_getArrowViewState()\"\n [@arrowPosition]=\"_getArrowViewState()\"\n [@allowChildren]=\"_getArrowDirectionState()\"\n (@arrowPosition.start)=\"_disableViewStateAnimation = true\"\n (@arrowPosition.done)=\"_disableViewStateAnimation = false\">\n <div class=\"mat-sort-header-stem\"></div>\n <div class=\"mat-sort-header-indicator\" [@indicator]=\"_getArrowDirectionState()\">\n <div class=\"mat-sort-header-pointer-left\" [@leftPointer]=\"_getArrowDirectionState()\"></div>\n <div class=\"mat-sort-header-pointer-right\" [@rightPointer]=\"_getArrowDirectionState()\"></div>\n <div class=\"mat-sort-header-pointer-middle\"></div>\n </div>\n </div>\n</div>\n",
|
|
484
|
+
host: {
|
|
485
|
+
'class': 'mat-sort-header',
|
|
486
|
+
'(click)': '_handleClick()',
|
|
487
|
+
'(keydown)': '_handleKeydown($event)',
|
|
488
|
+
'(mouseenter)': '_setIndicatorHintVisible(true)',
|
|
489
|
+
'(mouseleave)': '_setIndicatorHintVisible(false)',
|
|
490
|
+
'[attr.aria-sort]': '_getAriaSortAttribute()',
|
|
491
|
+
'[class.mat-sort-header-disabled]': '_isDisabled()',
|
|
492
|
+
},
|
|
493
|
+
encapsulation: ViewEncapsulation.None,
|
|
494
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
495
|
+
inputs: ['disabled'],
|
|
496
|
+
animations: [
|
|
497
|
+
matSortAnimations.indicator,
|
|
498
|
+
matSortAnimations.leftPointer,
|
|
499
|
+
matSortAnimations.rightPointer,
|
|
500
|
+
matSortAnimations.arrowOpacity,
|
|
501
|
+
matSortAnimations.arrowPosition,
|
|
502
|
+
matSortAnimations.allowChildren,
|
|
503
|
+
],
|
|
504
|
+
styles: [".mat-sort-header-container{display:flex;cursor:pointer;align-items:center;letter-spacing:normal;outline:0}[mat-sort-header].cdk-keyboard-focused .mat-sort-header-container,[mat-sort-header].cdk-program-focused .mat-sort-header-container{border-bottom:solid 1px currentColor}.mat-sort-header-disabled .mat-sort-header-container{cursor:default}.mat-sort-header-content{text-align:center;display:flex;align-items:center}.mat-sort-header-position-before{flex-direction:row-reverse}.mat-sort-header-arrow{height:12px;width:12px;min-width:12px;position:relative;display:flex;opacity:0}.mat-sort-header-arrow,[dir=rtl] .mat-sort-header-position-before .mat-sort-header-arrow{margin:0 0 0 6px}.mat-sort-header-position-before .mat-sort-header-arrow,[dir=rtl] .mat-sort-header-arrow{margin:0 6px 0 0}.mat-sort-header-stem{background:currentColor;height:10px;width:2px;margin:auto;display:flex;align-items:center}.cdk-high-contrast-active .mat-sort-header-stem{width:0;border-left:solid 2px}.mat-sort-header-indicator{width:100%;height:2px;display:flex;align-items:center;position:absolute;top:0;left:0}.mat-sort-header-pointer-middle{margin:auto;height:2px;width:2px;background:currentColor;transform:rotate(45deg)}.cdk-high-contrast-active .mat-sort-header-pointer-middle{width:0;height:0;border-top:solid 2px;border-left:solid 2px}.mat-sort-header-pointer-left,.mat-sort-header-pointer-right{background:currentColor;width:6px;height:2px;position:absolute;top:0}.cdk-high-contrast-active .mat-sort-header-pointer-left,.cdk-high-contrast-active .mat-sort-header-pointer-right{width:0;height:0;border-left:solid 6px;border-top:solid 2px}.mat-sort-header-pointer-left{transform-origin:right;left:0}.mat-sort-header-pointer-right{transform-origin:left;right:0}\n"]
|
|
505
|
+
},] }
|
|
506
|
+
];
|
|
507
|
+
MatSortHeader.ctorParameters = () => [
|
|
508
|
+
{ type: MatSortHeaderIntl },
|
|
509
|
+
{ type: ChangeDetectorRef },
|
|
510
|
+
{ type: MatSort, decorators: [{ type: Optional }] },
|
|
511
|
+
{ type: undefined, decorators: [{ type: Inject, args: ['MAT_SORT_HEADER_COLUMN_DEF',] }, { type: Optional }] },
|
|
512
|
+
{ type: FocusMonitor },
|
|
513
|
+
{ type: ElementRef }
|
|
514
|
+
];
|
|
515
|
+
MatSortHeader.propDecorators = {
|
|
516
|
+
id: [{ type: Input, args: ['mat-sort-header',] }],
|
|
517
|
+
arrowPosition: [{ type: Input }],
|
|
518
|
+
start: [{ type: Input }],
|
|
519
|
+
disableClear: [{ type: Input }]
|
|
520
|
+
};
|
|
516
521
|
|
|
517
522
|
/**
|
|
518
523
|
* @license
|
|
@@ -521,19 +526,16 @@ let MatSortHeader = /** @class */ (() => {
|
|
|
521
526
|
* Use of this source code is governed by an MIT-style license that can be
|
|
522
527
|
* found in the LICENSE file at https://angular.io/license
|
|
523
528
|
*/
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
];
|
|
535
|
-
return MatSortModule;
|
|
536
|
-
})();
|
|
529
|
+
class MatSortModule {
|
|
530
|
+
}
|
|
531
|
+
MatSortModule.decorators = [
|
|
532
|
+
{ type: NgModule, args: [{
|
|
533
|
+
imports: [CommonModule],
|
|
534
|
+
exports: [MatSort, MatSortHeader],
|
|
535
|
+
declarations: [MatSort, MatSortHeader],
|
|
536
|
+
providers: [MAT_SORT_HEADER_INTL_PROVIDER]
|
|
537
|
+
},] }
|
|
538
|
+
];
|
|
537
539
|
|
|
538
540
|
/**
|
|
539
541
|
* @license
|