@angular/material 8.0.0-beta.2 → 8.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/_theming.scss +18 -11
- package/autocomplete/typings/autocomplete-trigger.d.ts +13 -2
- package/autocomplete/typings/autocomplete.d.ts +3 -2
- package/autocomplete/typings/index.metadata.json +1 -1
- package/badge/typings/badge.d.ts +8 -2
- package/badge/typings/index.metadata.json +1 -1
- package/bundles/material-autocomplete.umd.js +196 -68
- package/bundles/material-autocomplete.umd.js.map +1 -1
- package/bundles/material-autocomplete.umd.min.js +1 -1
- package/bundles/material-autocomplete.umd.min.js.map +1 -1
- package/bundles/material-badge.umd.js +37 -9
- package/bundles/material-badge.umd.js.map +1 -1
- package/bundles/material-badge.umd.min.js +1 -1
- package/bundles/material-badge.umd.min.js.map +1 -1
- package/bundles/material-bottom-sheet.umd.js +72 -25
- package/bundles/material-bottom-sheet.umd.js.map +1 -1
- package/bundles/material-bottom-sheet.umd.min.js +1 -1
- package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
- package/bundles/material-button-toggle.umd.js +97 -28
- package/bundles/material-button-toggle.umd.js.map +1 -1
- package/bundles/material-button-toggle.umd.min.js +1 -1
- package/bundles/material-button-toggle.umd.min.js.map +1 -1
- package/bundles/material-button.umd.js +11 -9
- package/bundles/material-button.umd.js.map +1 -1
- package/bundles/material-button.umd.min.js +1 -1
- package/bundles/material-button.umd.min.js.map +1 -1
- package/bundles/material-card.umd.js +2 -2
- package/bundles/material-card.umd.js.map +1 -1
- package/bundles/material-card.umd.min.js.map +1 -1
- package/bundles/material-checkbox.umd.js +69 -25
- package/bundles/material-checkbox.umd.js.map +1 -1
- package/bundles/material-checkbox.umd.min.js +1 -1
- package/bundles/material-checkbox.umd.min.js.map +1 -1
- package/bundles/material-chips.umd.js +229 -82
- package/bundles/material-chips.umd.js.map +1 -1
- package/bundles/material-chips.umd.min.js +1 -1
- package/bundles/material-chips.umd.min.js.map +1 -1
- package/bundles/material-core.umd.js +159 -75
- package/bundles/material-core.umd.js.map +1 -1
- package/bundles/material-core.umd.min.js +2 -1
- package/bundles/material-core.umd.min.js.map +1 -1
- package/bundles/material-datepicker.umd.js +157 -62
- package/bundles/material-datepicker.umd.js.map +1 -1
- package/bundles/material-datepicker.umd.min.js +2 -2
- package/bundles/material-datepicker.umd.min.js.map +1 -1
- package/bundles/material-dialog.umd.js +98 -33
- package/bundles/material-dialog.umd.js.map +1 -1
- package/bundles/material-dialog.umd.min.js +1 -1
- package/bundles/material-dialog.umd.min.js.map +1 -1
- package/bundles/material-divider.umd.js +2 -2
- package/bundles/material-divider.umd.js.map +1 -1
- package/bundles/material-divider.umd.min.js.map +1 -1
- package/bundles/material-expansion.umd.js +63 -23
- package/bundles/material-expansion.umd.js.map +1 -1
- package/bundles/material-expansion.umd.min.js +1 -1
- package/bundles/material-expansion.umd.min.js.map +1 -1
- package/bundles/material-form-field.umd.js +114 -42
- package/bundles/material-form-field.umd.js.map +1 -1
- package/bundles/material-form-field.umd.min.js +1 -1
- package/bundles/material-form-field.umd.min.js.map +1 -1
- package/bundles/material-grid-list.umd.js +42 -17
- package/bundles/material-grid-list.umd.js.map +1 -1
- package/bundles/material-grid-list.umd.min.js +1 -1
- package/bundles/material-grid-list.umd.min.js.map +1 -1
- package/bundles/material-icon.umd.js +101 -31
- package/bundles/material-icon.umd.js.map +1 -1
- package/bundles/material-icon.umd.min.js +1 -1
- package/bundles/material-icon.umd.min.js.map +1 -1
- package/bundles/material-input.umd.js +29 -16
- package/bundles/material-input.umd.js.map +1 -1
- package/bundles/material-input.umd.min.js +1 -1
- package/bundles/material-input.umd.min.js.map +1 -1
- package/bundles/material-list.umd.js +97 -38
- package/bundles/material-list.umd.js.map +1 -1
- package/bundles/material-list.umd.min.js +2 -2
- package/bundles/material-list.umd.min.js.map +1 -1
- package/bundles/material-menu.umd.js +308 -167
- package/bundles/material-menu.umd.js.map +1 -1
- package/bundles/material-menu.umd.min.js +1 -1
- package/bundles/material-menu.umd.min.js.map +1 -1
- package/bundles/material-paginator.umd.js +28 -12
- package/bundles/material-paginator.umd.js.map +1 -1
- package/bundles/material-paginator.umd.min.js +1 -1
- package/bundles/material-paginator.umd.min.js.map +1 -1
- package/bundles/material-progress-bar.umd.js +26 -16
- package/bundles/material-progress-bar.umd.js.map +1 -1
- package/bundles/material-progress-bar.umd.min.js +1 -1
- package/bundles/material-progress-bar.umd.min.js.map +1 -1
- package/bundles/material-progress-spinner.umd.js +10 -12
- package/bundles/material-progress-spinner.umd.js.map +1 -1
- package/bundles/material-progress-spinner.umd.min.js +1 -1
- package/bundles/material-progress-spinner.umd.min.js.map +1 -1
- package/bundles/material-radio.umd.js +77 -21
- package/bundles/material-radio.umd.js.map +1 -1
- package/bundles/material-radio.umd.min.js +1 -1
- package/bundles/material-radio.umd.min.js.map +1 -1
- package/bundles/material-select.umd.js +186 -57
- package/bundles/material-select.umd.js.map +1 -1
- package/bundles/material-select.umd.min.js +1 -1
- package/bundles/material-select.umd.min.js.map +1 -1
- package/bundles/material-sidenav.umd.js +323 -145
- package/bundles/material-sidenav.umd.js.map +1 -1
- package/bundles/material-sidenav.umd.min.js +1 -1
- package/bundles/material-sidenav.umd.min.js.map +1 -1
- package/bundles/material-slide-toggle.umd.js +49 -31
- package/bundles/material-slide-toggle.umd.js.map +1 -1
- package/bundles/material-slide-toggle.umd.min.js +1 -1
- package/bundles/material-slide-toggle.umd.min.js.map +1 -1
- package/bundles/material-slider.umd.js +26 -12
- package/bundles/material-slider.umd.js.map +1 -1
- package/bundles/material-slider.umd.min.js +1 -1
- package/bundles/material-slider.umd.min.js.map +1 -1
- package/bundles/material-snack-bar.umd.js +55 -23
- package/bundles/material-snack-bar.umd.js.map +1 -1
- package/bundles/material-snack-bar.umd.min.js +1 -1
- package/bundles/material-snack-bar.umd.min.js.map +1 -1
- package/bundles/material-sort.umd.js +20 -17
- package/bundles/material-sort.umd.js.map +1 -1
- package/bundles/material-sort.umd.min.js +1 -1
- package/bundles/material-sort.umd.min.js.map +1 -1
- package/bundles/material-stepper.umd.js +50 -16
- package/bundles/material-stepper.umd.js.map +1 -1
- package/bundles/material-stepper.umd.min.js +1 -1
- package/bundles/material-stepper.umd.min.js.map +1 -1
- package/bundles/material-table.umd.js +116 -26
- package/bundles/material-table.umd.js.map +1 -1
- package/bundles/material-table.umd.min.js +1 -1
- package/bundles/material-table.umd.min.js.map +1 -1
- package/bundles/material-tabs.umd.js +162 -77
- package/bundles/material-tabs.umd.js.map +1 -1
- package/bundles/material-tabs.umd.min.js +2 -2
- package/bundles/material-tabs.umd.min.js.map +1 -1
- package/bundles/material-toolbar.umd.js +22 -9
- package/bundles/material-toolbar.umd.js.map +1 -1
- package/bundles/material-toolbar.umd.min.js +1 -1
- package/bundles/material-toolbar.umd.min.js.map +1 -1
- package/bundles/material-tooltip.umd.js +79 -25
- package/bundles/material-tooltip.umd.js.map +1 -1
- package/bundles/material-tooltip.umd.min.js.map +1 -1
- package/bundles/material-tree.umd.js +49 -28
- package/bundles/material-tree.umd.js.map +1 -1
- package/bundles/material-tree.umd.min.js +1 -1
- package/bundles/material-tree.umd.min.js.map +1 -1
- package/bundles/material.umd.js +3157 -1278
- package/bundles/material.umd.js.map +1 -1
- package/bundles/material.umd.min.js +19 -19
- package/bundles/material.umd.min.js.map +1 -1
- package/button/typings/button.d.ts +4 -3
- package/button/typings/index.metadata.json +1 -1
- package/button-toggle/typings/button-toggle.d.ts +7 -3
- package/button-toggle/typings/index.metadata.json +1 -1
- package/checkbox/typings/checkbox-module.d.ts +3 -0
- package/checkbox/typings/checkbox.d.ts +3 -2
- package/checkbox/typings/index.metadata.json +1 -1
- package/chips/typings/chip-list.d.ts +9 -2
- package/chips/typings/chip.d.ts +3 -2
- package/chips/typings/index.metadata.json +1 -1
- package/core/typings/index.metadata.json +1 -1
- package/core/typings/option/optgroup.d.ts +3 -2
- package/core/typings/public-api.d.ts +1 -0
- package/core/typings/ripple/ripple-renderer.d.ts +4 -4
- package/{typings/esm5 → core/typings}/version.d.ts +0 -0
- package/datepicker/typings/datepicker.d.ts +3 -2
- package/datepicker/typings/index.d.ts +0 -1
- package/datepicker/typings/index.metadata.json +1 -1
- package/datepicker/typings/public-api.d.ts +1 -0
- package/esm2015/autocomplete.js +187 -68
- package/esm2015/autocomplete.js.map +1 -1
- package/esm2015/badge.js +31 -10
- package/esm2015/badge.js.map +1 -1
- package/esm2015/bottom-sheet.js +75 -28
- package/esm2015/bottom-sheet.js.map +1 -1
- package/esm2015/button-toggle.js +89 -27
- package/esm2015/button-toggle.js.map +1 -1
- package/esm2015/button.js +13 -9
- package/esm2015/button.js.map +1 -1
- package/esm2015/card.js +4 -4
- package/esm2015/card.js.map +1 -1
- package/esm2015/checkbox.js +68 -25
- package/esm2015/checkbox.js.map +1 -1
- package/esm2015/chips.js +219 -79
- package/esm2015/chips.js.map +1 -1
- package/esm2015/core.js +160 -75
- package/esm2015/core.js.map +1 -1
- package/esm2015/datepicker.js +157 -62
- package/esm2015/datepicker.js.map +1 -1
- package/esm2015/dialog.js +99 -34
- package/esm2015/dialog.js.map +1 -1
- package/esm2015/divider.js +4 -4
- package/esm2015/divider.js.map +1 -1
- package/esm2015/expansion.js +65 -25
- package/esm2015/expansion.js.map +1 -1
- package/esm2015/form-field.js +108 -42
- package/esm2015/form-field.js.map +1 -1
- package/esm2015/grid-list.js +44 -19
- package/esm2015/grid-list.js.map +1 -1
- package/esm2015/icon.js +104 -32
- package/esm2015/icon.js.map +1 -1
- package/esm2015/input.js +31 -16
- package/esm2015/input.js.map +1 -1
- package/esm2015/list.js +96 -29
- package/esm2015/list.js.map +1 -1
- package/esm2015/material.js +28 -41
- package/esm2015/material.js.map +1 -1
- package/esm2015/menu.js +254 -131
- package/esm2015/menu.js.map +1 -1
- package/esm2015/paginator.js +31 -13
- package/esm2015/paginator.js.map +1 -1
- package/esm2015/progress-bar.js +28 -14
- package/esm2015/progress-bar.js.map +1 -1
- package/esm2015/progress-spinner.js +12 -12
- package/esm2015/progress-spinner.js.map +1 -1
- package/esm2015/radio.js +75 -22
- package/esm2015/radio.js.map +1 -1
- package/esm2015/select.js +188 -57
- package/esm2015/select.js.map +1 -1
- package/esm2015/sidenav.js +285 -136
- package/esm2015/sidenav.js.map +1 -1
- package/esm2015/slide-toggle.js +47 -29
- package/esm2015/slide-toggle.js.map +1 -1
- package/esm2015/slider.js +28 -12
- package/esm2015/slider.js.map +1 -1
- package/esm2015/snack-bar.js +58 -26
- package/esm2015/snack-bar.js.map +1 -1
- package/esm2015/sort.js +23 -16
- package/esm2015/sort.js.map +1 -1
- package/esm2015/stepper.js +47 -18
- package/esm2015/stepper.js.map +1 -1
- package/esm2015/table.js +120 -27
- package/esm2015/table.js.map +1 -1
- package/esm2015/tabs.js +160 -63
- package/esm2015/tabs.js.map +1 -1
- package/esm2015/toolbar.js +24 -9
- package/esm2015/toolbar.js.map +1 -1
- package/esm2015/tooltip.js +82 -28
- package/esm2015/tooltip.js.map +1 -1
- package/esm2015/tree.js +54 -31
- package/esm2015/tree.js.map +1 -1
- package/esm5/autocomplete.es5.js +199 -69
- package/esm5/autocomplete.es5.js.map +1 -1
- package/esm5/badge.es5.js +41 -11
- package/esm5/badge.es5.js.map +1 -1
- package/esm5/bottom-sheet.es5.js +75 -28
- package/esm5/bottom-sheet.es5.js.map +1 -1
- package/esm5/button-toggle.es5.js +100 -29
- package/esm5/button-toggle.es5.js.map +1 -1
- package/esm5/button.es5.js +14 -10
- package/esm5/button.es5.js.map +1 -1
- package/esm5/card.es5.js +4 -4
- package/esm5/card.es5.js.map +1 -1
- package/esm5/checkbox.es5.js +71 -26
- package/esm5/checkbox.es5.js.map +1 -1
- package/esm5/chips.es5.js +233 -82
- package/esm5/chips.es5.js.map +1 -1
- package/esm5/core.es5.js +162 -77
- package/esm5/core.es5.js.map +1 -1
- package/esm5/datepicker.es5.js +158 -63
- package/esm5/datepicker.es5.js.map +1 -1
- package/esm5/dialog.es5.js +100 -35
- package/esm5/dialog.es5.js.map +1 -1
- package/esm5/divider.es5.js +4 -4
- package/esm5/divider.es5.js.map +1 -1
- package/esm5/expansion.es5.js +65 -25
- package/esm5/expansion.es5.js.map +1 -1
- package/esm5/form-field.es5.js +117 -43
- package/esm5/form-field.es5.js.map +1 -1
- package/esm5/grid-list.es5.js +44 -19
- package/esm5/grid-list.es5.js.map +1 -1
- package/esm5/icon.es5.js +105 -33
- package/esm5/icon.es5.js.map +1 -1
- package/esm5/input.es5.js +32 -17
- package/esm5/input.es5.js.map +1 -1
- package/esm5/list.es5.js +100 -33
- package/esm5/list.es5.js.map +1 -1
- package/esm5/material.es5.js +28 -41
- package/esm5/material.es5.js.map +1 -1
- package/esm5/menu.es5.js +301 -161
- package/esm5/menu.es5.js.map +1 -1
- package/esm5/paginator.es5.js +32 -14
- package/esm5/paginator.es5.js.map +1 -1
- package/esm5/progress-bar.es5.js +29 -17
- package/esm5/progress-bar.es5.js.map +1 -1
- package/esm5/progress-spinner.es5.js +13 -13
- package/esm5/progress-spinner.es5.js.map +1 -1
- package/esm5/radio.es5.js +81 -23
- package/esm5/radio.es5.js.map +1 -1
- package/esm5/select.es5.js +189 -58
- package/esm5/select.es5.js.map +1 -1
- package/esm5/sidenav.es5.js +326 -148
- package/esm5/sidenav.es5.js.map +1 -1
- package/esm5/slide-toggle.es5.js +48 -29
- package/esm5/slide-toggle.es5.js.map +1 -1
- package/esm5/slider.es5.js +29 -13
- package/esm5/slider.es5.js.map +1 -1
- package/esm5/snack-bar.es5.js +58 -26
- package/esm5/snack-bar.es5.js.map +1 -1
- package/esm5/sort.es5.js +25 -18
- package/esm5/sort.es5.js.map +1 -1
- package/esm5/stepper.es5.js +53 -19
- package/esm5/stepper.es5.js.map +1 -1
- package/esm5/table.es5.js +119 -30
- package/esm5/table.es5.js.map +1 -1
- package/esm5/tabs.es5.js +165 -68
- package/esm5/tabs.es5.js.map +1 -1
- package/esm5/toolbar.es5.js +25 -10
- package/esm5/toolbar.es5.js.map +1 -1
- package/esm5/tooltip.es5.js +81 -27
- package/esm5/tooltip.es5.js.map +1 -1
- package/esm5/tree.es5.js +52 -29
- package/esm5/tree.es5.js.map +1 -1
- package/form-field/typings/form-field.d.ts +9 -3
- package/form-field/typings/index.metadata.json +1 -1
- package/grid-list/typings/index.d.ts +1 -1
- package/grid-list/typings/index.metadata.json +1 -1
- package/icon/typings/icon.d.ts +3 -2
- package/icon/typings/index.metadata.json +1 -1
- package/input/typings/index.metadata.json +1 -1
- package/input/typings/input.d.ts +3 -2
- package/list/typings/index.metadata.json +1 -1
- package/list/typings/list.d.ts +5 -4
- package/list/typings/selection-list.d.ts +7 -4
- package/material.d.ts +1 -1
- package/material.metadata.json +3 -3
- package/menu/typings/index.d.ts +2 -4
- package/menu/typings/index.metadata.json +1 -1
- package/menu/typings/menu-item.d.ts +3 -2
- package/menu/typings/menu-module.d.ts +6 -0
- package/menu/typings/menu-trigger.d.ts +1 -3
- package/menu/typings/menu.d.ts +158 -5
- package/menu/typings/public-api.d.ts +5 -2
- package/package.json +11 -11
- package/paginator/typings/index.metadata.json +1 -1
- package/paginator/typings/paginator.d.ts +3 -2
- 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/typings/index.metadata.json +1 -1
- package/progress-bar/typings/progress-bar.d.ts +8 -7
- package/progress-spinner/typings/index.metadata.json +1 -1
- package/progress-spinner/typings/progress-spinner.d.ts +5 -4
- package/radio/typings/index.metadata.json +1 -1
- package/radio/typings/radio.d.ts +10 -4
- package/schematics/ng-add/fonts/material-fonts.js.map +1 -1
- package/schematics/ng-add/fonts/project-index-html.d.ts +1 -1
- package/schematics/ng-add/fonts/project-index-html.js.map +1 -1
- package/schematics/ng-add/gestures/hammerjs-import.js.map +1 -1
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/package-config.js.map +1 -1
- package/schematics/ng-add/schema.js.map +1 -1
- package/schematics/ng-add/setup-project.js.map +1 -1
- package/schematics/ng-add/theming/create-custom-theme.js.map +1 -1
- package/schematics/ng-add/theming/theming.js +1 -1
- package/schematics/ng-add/theming/theming.js.map +1 -1
- package/schematics/ng-add/version-names.d.ts +1 -1
- package/schematics/ng-add/version-names.js +1 -1
- package/schematics/ng-add/version-names.js.map +1 -1
- package/schematics/ng-generate/address-form/index.js.map +1 -1
- package/schematics/ng-generate/address-form/schema.js.map +1 -1
- package/schematics/ng-generate/dashboard/index.js.map +1 -1
- package/schematics/ng-generate/dashboard/schema.js.map +1 -1
- package/schematics/ng-generate/nav/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html +2 -2
- package/schematics/ng-generate/nav/index.js.map +1 -1
- package/schematics/ng-generate/nav/schema.js.map +1 -1
- package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__-datasource.ts +3 -4
- package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.html +2 -2
- package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +11 -4
- package/schematics/ng-generate/table/index.js.map +1 -1
- package/schematics/ng-generate/table/schema.js.map +1 -1
- package/schematics/ng-generate/tree/files/__path__/__name@dasherize@if-flat__/example-data.ts +1 -1
- package/schematics/ng-generate/tree/index.js.map +1 -1
- package/schematics/ng-generate/tree/schema.js.map +1 -1
- package/schematics/ng-update/data/attribute-selectors.js.map +1 -1
- package/schematics/ng-update/data/class-names.js +1 -1
- package/schematics/ng-update/data/class-names.js.map +1 -1
- package/schematics/ng-update/data/constructor-checks.js +22 -14
- package/schematics/ng-update/data/constructor-checks.js.map +1 -1
- package/schematics/ng-update/data/css-selectors.js +2 -2
- package/schematics/ng-update/data/css-selectors.js.map +1 -1
- package/schematics/ng-update/data/element-selectors.js +1 -1
- package/schematics/ng-update/data/element-selectors.js.map +1 -1
- package/schematics/ng-update/data/index.js.map +1 -1
- package/schematics/ng-update/data/input-names.js +7 -7
- package/schematics/ng-update/data/input-names.js.map +1 -1
- package/schematics/ng-update/data/method-call-checks.js.map +1 -1
- package/schematics/ng-update/data/output-names.js +4 -4
- package/schematics/ng-update/data/output-names.js.map +1 -1
- package/schematics/ng-update/data/property-names.js +11 -11
- package/schematics/ng-update/data/property-names.js.map +1 -1
- package/schematics/ng-update/index.js.map +1 -1
- package/schematics/ng-update/typescript/module-specifiers.js.map +1 -1
- package/schematics/ng-update/upgrade-data.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/misc-checks/checkClassInheritanceMiscRule.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/misc-checks/checkClassNamesMiscRule.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/misc-checks/checkImportsMiscRule.d.ts +1 -1
- package/schematics/ng-update/upgrade-rules/misc-checks/checkImportsMiscRule.js +1 -1
- package/schematics/ng-update/upgrade-rules/misc-checks/checkImportsMiscRule.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/misc-checks/checkPropertyNamesMiscRule.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/misc-checks/checkTemplateMiscRule.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/misc-ripples-v7/ripple-speed-factor.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/misc-ripples-v7/rippleSpeedFactorAssignmentRule.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/misc-ripples-v7/rippleSpeedFactorTemplateRule.js.map +1 -1
- package/schematics/ng-update/upgrade-rules/package-imports-v8/updateAngularMaterialImportsRule.js +21 -10
- package/schematics/ng-update/upgrade-rules/package-imports-v8/updateAngularMaterialImportsRule.js.map +1 -1
- package/select/typings/index.metadata.json +1 -1
- package/select/typings/select.d.ts +3 -2
- package/sidenav/typings/drawer.d.ts +8 -11
- package/sidenav/typings/index.metadata.json +1 -1
- package/slide-toggle/typings/index.metadata.json +1 -1
- package/slide-toggle/typings/slide-toggle.d.ts +6 -11
- package/slider/typings/index.metadata.json +1 -1
- package/slider/typings/slider.d.ts +3 -2
- package/sort/typings/index.metadata.json +1 -1
- package/sort/typings/sort-header.d.ts +2 -2
- package/sort/typings/sort.d.ts +3 -2
- package/stepper/typings/index.metadata.json +1 -1
- package/stepper/typings/step-header.d.ts +2 -0
- package/table/typings/index.metadata.json +1 -1
- package/table/typings/public-api.d.ts +1 -0
- package/table/typings/text-column.d.ts +19 -0
- package/tabs/typings/index.d.ts +1 -5
- package/tabs/typings/index.metadata.json +1 -1
- package/tabs/typings/tab-group.d.ts +3 -2
- package/tabs/typings/tab-header.d.ts +3 -2
- package/tabs/typings/tab-label-wrapper.d.ts +3 -2
- package/tabs/typings/tab-nav-bar/tab-nav-bar.d.ts +5 -4
- package/tabs/typings/tab.d.ts +3 -2
- package/toolbar/typings/index.metadata.json +1 -1
- package/toolbar/typings/toolbar.d.ts +3 -2
- package/tree/typings/data-source/flat-data-source.d.ts +3 -3
- package/tree/typings/index.metadata.json +1 -1
- package/tree/typings/node.d.ts +3 -2
- package/typings/autocomplete/autocomplete-trigger.d.ts +13 -2
- package/typings/autocomplete/autocomplete.d.ts +3 -2
- package/typings/autocomplete/index.metadata.json +1 -1
- package/typings/badge/badge.d.ts +8 -2
- package/typings/badge/index.metadata.json +1 -1
- package/typings/button/button.d.ts +4 -3
- package/typings/button/index.metadata.json +1 -1
- package/typings/button-toggle/button-toggle.d.ts +7 -3
- package/typings/button-toggle/index.metadata.json +1 -1
- package/typings/checkbox/checkbox-module.d.ts +3 -0
- package/typings/checkbox/checkbox.d.ts +3 -2
- package/typings/checkbox/index.metadata.json +1 -1
- package/typings/chips/chip-list.d.ts +9 -2
- package/typings/chips/chip.d.ts +3 -2
- package/typings/chips/index.metadata.json +1 -1
- package/typings/core/index.metadata.json +1 -1
- package/typings/core/option/optgroup.d.ts +3 -2
- package/typings/core/public-api.d.ts +1 -0
- package/typings/core/ripple/ripple-renderer.d.ts +4 -4
- package/typings/{version.d.ts → core/version.d.ts} +0 -0
- package/typings/datepicker/datepicker.d.ts +3 -2
- package/typings/datepicker/index.d.ts +0 -1
- package/typings/datepicker/index.metadata.json +1 -1
- package/typings/datepicker/public-api.d.ts +1 -0
- package/typings/esm5/autocomplete/autocomplete-trigger.d.ts +13 -2
- package/typings/esm5/autocomplete/autocomplete.d.ts +3 -2
- package/typings/esm5/autocomplete/index.metadata.json +1 -1
- package/typings/esm5/badge/badge.d.ts +8 -2
- package/typings/esm5/badge/index.metadata.json +1 -1
- package/typings/esm5/button/button.d.ts +4 -3
- package/typings/esm5/button/index.metadata.json +1 -1
- package/typings/esm5/button-toggle/button-toggle.d.ts +7 -3
- package/typings/esm5/button-toggle/index.metadata.json +1 -1
- package/typings/esm5/checkbox/checkbox-module.d.ts +3 -0
- package/typings/esm5/checkbox/checkbox.d.ts +3 -2
- package/typings/esm5/checkbox/index.metadata.json +1 -1
- package/typings/esm5/chips/chip-list.d.ts +9 -2
- package/typings/esm5/chips/chip.d.ts +3 -2
- package/typings/esm5/chips/index.metadata.json +1 -1
- package/typings/esm5/core/index.metadata.json +1 -1
- package/typings/esm5/core/option/optgroup.d.ts +3 -2
- package/typings/esm5/core/public-api.d.ts +1 -0
- package/typings/esm5/core/ripple/ripple-renderer.d.ts +4 -4
- package/typings/esm5/core/version.d.ts +10 -0
- package/typings/esm5/datepicker/datepicker.d.ts +3 -2
- package/typings/esm5/datepicker/index.d.ts +0 -1
- package/typings/esm5/datepicker/index.metadata.json +1 -1
- package/typings/esm5/datepicker/public-api.d.ts +1 -0
- package/typings/esm5/form-field/form-field.d.ts +9 -3
- package/typings/esm5/form-field/index.metadata.json +1 -1
- package/typings/esm5/grid-list/index.d.ts +1 -1
- package/typings/esm5/grid-list/index.metadata.json +1 -1
- package/typings/esm5/icon/icon.d.ts +3 -2
- package/typings/esm5/icon/index.metadata.json +1 -1
- package/typings/esm5/index.metadata.json +1 -1
- package/typings/esm5/input/index.metadata.json +1 -1
- package/typings/esm5/input/input.d.ts +3 -2
- package/typings/esm5/list/index.metadata.json +1 -1
- package/typings/esm5/list/list.d.ts +5 -4
- package/typings/esm5/list/selection-list.d.ts +7 -4
- package/typings/esm5/menu/index.d.ts +2 -4
- package/typings/esm5/menu/index.metadata.json +1 -1
- package/typings/esm5/menu/menu-item.d.ts +3 -2
- package/typings/esm5/menu/menu-module.d.ts +6 -0
- package/typings/esm5/menu/menu-trigger.d.ts +1 -3
- package/typings/esm5/menu/menu.d.ts +158 -5
- package/typings/esm5/menu/public-api.d.ts +5 -2
- package/typings/esm5/paginator/index.metadata.json +1 -1
- package/typings/esm5/paginator/paginator.d.ts +3 -2
- package/typings/esm5/progress-bar/index.metadata.json +1 -1
- package/typings/esm5/progress-bar/progress-bar.d.ts +8 -7
- package/typings/esm5/progress-spinner/index.metadata.json +1 -1
- package/typings/esm5/progress-spinner/progress-spinner.d.ts +5 -4
- package/typings/esm5/public-api.d.ts +0 -1
- package/typings/esm5/radio/index.metadata.json +1 -1
- package/typings/esm5/radio/radio.d.ts +10 -4
- package/typings/esm5/select/index.metadata.json +1 -1
- package/typings/esm5/select/select.d.ts +3 -2
- package/typings/esm5/sidenav/drawer.d.ts +8 -11
- package/typings/esm5/sidenav/index.metadata.json +1 -1
- package/typings/esm5/slide-toggle/index.metadata.json +1 -1
- package/typings/esm5/slide-toggle/slide-toggle.d.ts +6 -11
- package/typings/esm5/slider/index.metadata.json +1 -1
- package/typings/esm5/slider/slider.d.ts +3 -2
- package/typings/esm5/sort/index.metadata.json +1 -1
- package/typings/esm5/sort/sort-header.d.ts +2 -2
- package/typings/esm5/sort/sort.d.ts +3 -2
- package/typings/esm5/stepper/index.metadata.json +1 -1
- package/typings/esm5/stepper/step-header.d.ts +2 -0
- package/typings/esm5/table/index.metadata.json +1 -1
- package/typings/esm5/table/public-api.d.ts +1 -0
- package/typings/esm5/table/text-column.d.ts +19 -0
- package/typings/esm5/tabs/index.d.ts +1 -5
- package/typings/esm5/tabs/index.metadata.json +1 -1
- package/typings/esm5/tabs/tab-group.d.ts +3 -2
- package/typings/esm5/tabs/tab-header.d.ts +3 -2
- package/typings/esm5/tabs/tab-label-wrapper.d.ts +3 -2
- package/typings/esm5/tabs/tab-nav-bar/tab-nav-bar.d.ts +5 -4
- package/typings/esm5/tabs/tab.d.ts +3 -2
- package/typings/esm5/toolbar/index.metadata.json +1 -1
- package/typings/esm5/toolbar/toolbar.d.ts +3 -2
- package/typings/esm5/tree/data-source/flat-data-source.d.ts +3 -3
- package/typings/esm5/tree/index.metadata.json +1 -1
- package/typings/esm5/tree/node.d.ts +3 -2
- package/typings/form-field/form-field.d.ts +9 -3
- package/typings/form-field/index.metadata.json +1 -1
- package/typings/grid-list/index.d.ts +1 -1
- package/typings/grid-list/index.metadata.json +1 -1
- package/typings/icon/icon.d.ts +3 -2
- package/typings/icon/index.metadata.json +1 -1
- package/typings/index.metadata.json +1 -1
- package/typings/input/index.metadata.json +1 -1
- package/typings/input/input.d.ts +3 -2
- package/typings/list/index.metadata.json +1 -1
- package/typings/list/list.d.ts +5 -4
- package/typings/list/selection-list.d.ts +7 -4
- package/typings/menu/index.d.ts +2 -4
- package/typings/menu/index.metadata.json +1 -1
- package/typings/menu/menu-item.d.ts +3 -2
- package/typings/menu/menu-module.d.ts +6 -0
- package/typings/menu/menu-trigger.d.ts +1 -3
- package/typings/menu/menu.d.ts +158 -5
- package/typings/menu/public-api.d.ts +5 -2
- package/typings/paginator/index.metadata.json +1 -1
- package/typings/paginator/paginator.d.ts +3 -2
- package/typings/progress-bar/index.metadata.json +1 -1
- package/typings/progress-bar/progress-bar.d.ts +8 -7
- package/typings/progress-spinner/index.metadata.json +1 -1
- package/typings/progress-spinner/progress-spinner.d.ts +5 -4
- package/typings/public-api.d.ts +0 -1
- package/typings/radio/index.metadata.json +1 -1
- package/typings/radio/radio.d.ts +10 -4
- package/typings/schematics/ng-add/fonts/project-index-html.d.ts +1 -1
- package/typings/schematics/ng-add/version-names.d.ts +1 -1
- package/typings/schematics/ng-update/upgrade-rules/misc-checks/checkImportsMiscRule.d.ts +1 -1
- package/typings/select/index.metadata.json +1 -1
- package/typings/select/select.d.ts +3 -2
- package/typings/sidenav/drawer.d.ts +8 -11
- package/typings/sidenav/index.metadata.json +1 -1
- package/typings/slide-toggle/index.metadata.json +1 -1
- package/typings/slide-toggle/slide-toggle.d.ts +6 -11
- package/typings/slider/index.metadata.json +1 -1
- package/typings/slider/slider.d.ts +3 -2
- package/typings/sort/index.metadata.json +1 -1
- package/typings/sort/sort-header.d.ts +2 -2
- package/typings/sort/sort.d.ts +3 -2
- package/typings/stepper/index.metadata.json +1 -1
- package/typings/stepper/step-header.d.ts +2 -0
- package/typings/table/index.metadata.json +1 -1
- package/typings/table/public-api.d.ts +1 -0
- package/typings/table/text-column.d.ts +19 -0
- package/typings/tabs/index.d.ts +1 -5
- package/typings/tabs/index.metadata.json +1 -1
- package/typings/tabs/tab-group.d.ts +3 -2
- package/typings/tabs/tab-header.d.ts +3 -2
- package/typings/tabs/tab-label-wrapper.d.ts +3 -2
- package/typings/tabs/tab-nav-bar/tab-nav-bar.d.ts +5 -4
- package/typings/tabs/tab.d.ts +3 -2
- package/typings/toolbar/index.metadata.json +1 -1
- package/typings/toolbar/toolbar.d.ts +3 -2
- package/typings/tree/data-source/flat-data-source.d.ts +3 -3
- package/typings/tree/index.metadata.json +1 -1
- package/typings/tree/node.d.ts +3 -2
- package/menu/typings/menu-directive.d.ts +0 -159
- package/typings/esm5/menu/menu-directive.d.ts +0 -159
- package/typings/menu/menu-directive.d.ts +0 -159
package/esm2015/menu.js
CHANGED
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
* Use of this source code is governed by an MIT-style license that can be
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
|
-
import {
|
|
8
|
+
import { trigger, state, style, animate, transition, query, group } from '@angular/animations';
|
|
9
|
+
import { Directive, TemplateRef, ComponentFactoryResolver, ApplicationRef, Injector, ViewContainerRef, Inject, InjectionToken, ChangeDetectionStrategy, Component, ElementRef, ViewEncapsulation, Optional, Input, HostListener, ContentChild, ContentChildren, EventEmitter, NgZone, Output, ViewChild, Self, NgModule } from '@angular/core';
|
|
9
10
|
import { TemplatePortal, DomPortalOutlet } from '@angular/cdk/portal';
|
|
10
11
|
import { DOCUMENT, CommonModule } from '@angular/common';
|
|
11
12
|
import { Subject, merge, Subscription, asapScheduler, of } from 'rxjs';
|
|
12
|
-
import { trigger, state, style, animate, transition, query, group } from '@angular/animations';
|
|
13
13
|
import { FocusMonitor, FocusKeyManager, isFakeMousedownFromScreenReader } from '@angular/cdk/a11y';
|
|
14
14
|
import { mixinDisabled, mixinDisableRipple, MatCommonModule, MatRippleModule } from '@angular/material/core';
|
|
15
15
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
@@ -21,7 +21,69 @@ import { normalizePassiveListenerOptions } from '@angular/cdk/platform';
|
|
|
21
21
|
|
|
22
22
|
/**
|
|
23
23
|
* @fileoverview added by tsickle
|
|
24
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
24
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Animations used by the mat-menu component.
|
|
28
|
+
* Animation duration and timing values are based on:
|
|
29
|
+
* https://material.io/guidelines/components/menus.html#menus-usage
|
|
30
|
+
* \@docs-private
|
|
31
|
+
* @type {?}
|
|
32
|
+
*/
|
|
33
|
+
const matMenuAnimations = {
|
|
34
|
+
/**
|
|
35
|
+
* This animation controls the menu panel's entry and exit from the page.
|
|
36
|
+
*
|
|
37
|
+
* When the menu panel is added to the DOM, it scales in and fades in its border.
|
|
38
|
+
*
|
|
39
|
+
* When the menu panel is removed from the DOM, it simply fades out after a brief
|
|
40
|
+
* delay to display the ripple.
|
|
41
|
+
*/
|
|
42
|
+
transformMenu: trigger('transformMenu', [
|
|
43
|
+
state('void', style({
|
|
44
|
+
opacity: 0,
|
|
45
|
+
transform: 'scale(0.8)'
|
|
46
|
+
})),
|
|
47
|
+
transition('void => enter', group([
|
|
48
|
+
query('.mat-menu-content, .mat-mdc-menu-content', animate('100ms linear', style({
|
|
49
|
+
opacity: 1
|
|
50
|
+
}))),
|
|
51
|
+
animate('120ms cubic-bezier(0, 0, 0.2, 1)', style({ transform: 'scale(1)' })),
|
|
52
|
+
])),
|
|
53
|
+
transition('* => void', animate('100ms 25ms linear', style({ opacity: 0 })))
|
|
54
|
+
]),
|
|
55
|
+
/**
|
|
56
|
+
* This animation fades in the background color and content of the menu panel
|
|
57
|
+
* after its containing element is scaled in.
|
|
58
|
+
*/
|
|
59
|
+
fadeInItems: trigger('fadeInItems', [
|
|
60
|
+
// TODO(crisbeto): this is inside the `transformMenu`
|
|
61
|
+
// now. Remove next time we do breaking changes.
|
|
62
|
+
state('showing', style({ opacity: 1 })),
|
|
63
|
+
transition('void => *', [
|
|
64
|
+
style({ opacity: 0 }),
|
|
65
|
+
animate('400ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)')
|
|
66
|
+
])
|
|
67
|
+
])
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* @deprecated
|
|
71
|
+
* \@breaking-change 8.0.0
|
|
72
|
+
* \@docs-private
|
|
73
|
+
* @type {?}
|
|
74
|
+
*/
|
|
75
|
+
const fadeInItems = matMenuAnimations.fadeInItems;
|
|
76
|
+
/**
|
|
77
|
+
* @deprecated
|
|
78
|
+
* \@breaking-change 8.0.0
|
|
79
|
+
* \@docs-private
|
|
80
|
+
* @type {?}
|
|
81
|
+
*/
|
|
82
|
+
const transformMenu = matMenuAnimations.transformMenu;
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* @fileoverview added by tsickle
|
|
86
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
25
87
|
*/
|
|
26
88
|
/**
|
|
27
89
|
* Menu content that will be rendered lazily once the menu is opened.
|
|
@@ -106,67 +168,7 @@ MatMenuContent.ctorParameters = () => [
|
|
|
106
168
|
|
|
107
169
|
/**
|
|
108
170
|
* @fileoverview added by tsickle
|
|
109
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
110
|
-
*/
|
|
111
|
-
/**
|
|
112
|
-
* Animations used by the mat-menu component.
|
|
113
|
-
* Animation duration and timing values are based on:
|
|
114
|
-
* https://material.io/guidelines/components/menus.html#menus-usage
|
|
115
|
-
* \@docs-private
|
|
116
|
-
* @type {?}
|
|
117
|
-
*/
|
|
118
|
-
const matMenuAnimations = {
|
|
119
|
-
/**
|
|
120
|
-
* This animation controls the menu panel's entry and exit from the page.
|
|
121
|
-
*
|
|
122
|
-
* When the menu panel is added to the DOM, it scales in and fades in its border.
|
|
123
|
-
*
|
|
124
|
-
* When the menu panel is removed from the DOM, it simply fades out after a brief
|
|
125
|
-
* delay to display the ripple.
|
|
126
|
-
*/
|
|
127
|
-
transformMenu: trigger('transformMenu', [
|
|
128
|
-
state('void', style({
|
|
129
|
-
opacity: 0,
|
|
130
|
-
transform: 'scale(0.8)'
|
|
131
|
-
})),
|
|
132
|
-
transition('void => enter', group([
|
|
133
|
-
query('.mat-menu-content', animate('100ms linear', style({ opacity: 1 }))),
|
|
134
|
-
animate('120ms cubic-bezier(0, 0, 0.2, 1)', style({ transform: 'scale(1)' })),
|
|
135
|
-
])),
|
|
136
|
-
transition('* => void', animate('100ms 25ms linear', style({ opacity: 0 })))
|
|
137
|
-
]),
|
|
138
|
-
/**
|
|
139
|
-
* This animation fades in the background color and content of the menu panel
|
|
140
|
-
* after its containing element is scaled in.
|
|
141
|
-
*/
|
|
142
|
-
fadeInItems: trigger('fadeInItems', [
|
|
143
|
-
// TODO(crisbeto): this is inside the `transformMenu`
|
|
144
|
-
// now. Remove next time we do breaking changes.
|
|
145
|
-
state('showing', style({ opacity: 1 })),
|
|
146
|
-
transition('void => *', [
|
|
147
|
-
style({ opacity: 0 }),
|
|
148
|
-
animate('400ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)')
|
|
149
|
-
])
|
|
150
|
-
])
|
|
151
|
-
};
|
|
152
|
-
/**
|
|
153
|
-
* @deprecated
|
|
154
|
-
* \@breaking-change 8.0.0
|
|
155
|
-
* \@docs-private
|
|
156
|
-
* @type {?}
|
|
157
|
-
*/
|
|
158
|
-
const fadeInItems = matMenuAnimations.fadeInItems;
|
|
159
|
-
/**
|
|
160
|
-
* @deprecated
|
|
161
|
-
* \@breaking-change 8.0.0
|
|
162
|
-
* \@docs-private
|
|
163
|
-
* @type {?}
|
|
164
|
-
*/
|
|
165
|
-
const transformMenu = matMenuAnimations.transformMenu;
|
|
166
|
-
|
|
167
|
-
/**
|
|
168
|
-
* @fileoverview added by tsickle
|
|
169
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
171
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
170
172
|
*/
|
|
171
173
|
|
|
172
174
|
/**
|
|
@@ -204,7 +206,7 @@ function throwMatMenuInvalidPositionY() {
|
|
|
204
206
|
|
|
205
207
|
/**
|
|
206
208
|
* @fileoverview added by tsickle
|
|
207
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
209
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
208
210
|
*/
|
|
209
211
|
/**
|
|
210
212
|
* Injection token used to provide the parent menu to menu-specific components.
|
|
@@ -215,7 +217,7 @@ const MAT_MENU_PANEL = new InjectionToken('MAT_MENU_PANEL');
|
|
|
215
217
|
|
|
216
218
|
/**
|
|
217
219
|
* @fileoverview added by tsickle
|
|
218
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
220
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
219
221
|
*/
|
|
220
222
|
// Boilerplate for applying mixins to MatMenuItem.
|
|
221
223
|
/**
|
|
@@ -313,6 +315,11 @@ class MatMenuItem extends _MatMenuItemMixinBase {
|
|
|
313
315
|
* @param {?} event
|
|
314
316
|
* @return {?}
|
|
315
317
|
*/
|
|
318
|
+
// We have to use a `HostListener` here in order to support both Ivy and ViewEngine.
|
|
319
|
+
// In Ivy the `host` bindings will be merged when this class is extended, whereas in
|
|
320
|
+
// ViewEngine they're overwritte.
|
|
321
|
+
// TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.
|
|
322
|
+
// tslint:disable-next-line:no-host-decorator-in-concrete
|
|
316
323
|
_checkDisabled(event) {
|
|
317
324
|
if (this.disabled) {
|
|
318
325
|
event.preventDefault();
|
|
@@ -323,6 +330,11 @@ class MatMenuItem extends _MatMenuItemMixinBase {
|
|
|
323
330
|
* Emits to the hover stream.
|
|
324
331
|
* @return {?}
|
|
325
332
|
*/
|
|
333
|
+
// We have to use a `HostListener` here in order to support both Ivy and ViewEngine.
|
|
334
|
+
// In Ivy the `host` bindings will be merged when this class is extended, whereas in
|
|
335
|
+
// ViewEngine they're overwritte.
|
|
336
|
+
// TODO(crisbeto): we move this back into `host` once Ivy is turned on by default.
|
|
337
|
+
// tslint:disable-next-line:no-host-decorator-in-concrete
|
|
326
338
|
_handleMouseEnter() {
|
|
327
339
|
this._hovered.next(this);
|
|
328
340
|
}
|
|
@@ -364,8 +376,6 @@ MatMenuItem.decorators = [
|
|
|
364
376
|
'[attr.tabindex]': '_getTabIndex()',
|
|
365
377
|
'[attr.aria-disabled]': 'disabled.toString()',
|
|
366
378
|
'[attr.disabled]': 'disabled || null',
|
|
367
|
-
'(click)': '_checkDisabled($event)',
|
|
368
|
-
'(mouseenter)': '_handleMouseEnter()',
|
|
369
379
|
},
|
|
370
380
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
371
381
|
encapsulation: ViewEncapsulation.None,
|
|
@@ -380,12 +390,14 @@ MatMenuItem.ctorParameters = () => [
|
|
|
380
390
|
{ type: undefined, decorators: [{ type: Inject, args: [MAT_MENU_PANEL,] }, { type: Optional }] }
|
|
381
391
|
];
|
|
382
392
|
MatMenuItem.propDecorators = {
|
|
383
|
-
role: [{ type: Input }]
|
|
393
|
+
role: [{ type: Input }],
|
|
394
|
+
_checkDisabled: [{ type: HostListener, args: ['click', ['$event'],] }],
|
|
395
|
+
_handleMouseEnter: [{ type: HostListener, args: ['mouseenter',] }]
|
|
384
396
|
};
|
|
385
397
|
|
|
386
398
|
/**
|
|
387
399
|
* @fileoverview added by tsickle
|
|
388
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
400
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
389
401
|
*/
|
|
390
402
|
/**
|
|
391
403
|
* Injection token to be used to override the default options for `mat-menu`.
|
|
@@ -413,7 +425,11 @@ function MAT_MENU_DEFAULT_OPTIONS_FACTORY() {
|
|
|
413
425
|
* @type {?}
|
|
414
426
|
*/
|
|
415
427
|
const MAT_MENU_BASE_ELEVATION = 4;
|
|
416
|
-
|
|
428
|
+
/**
|
|
429
|
+
* Base class with all of the `MatMenu` functionality.
|
|
430
|
+
*/
|
|
431
|
+
// tslint:disable-next-line:class-name
|
|
432
|
+
class _MatMenuBase {
|
|
417
433
|
/**
|
|
418
434
|
* @param {?} _elementRef
|
|
419
435
|
* @param {?} _ngZone
|
|
@@ -533,15 +549,23 @@ class MatMenu {
|
|
|
533
549
|
/** @type {?} */
|
|
534
550
|
const previousPanelClass = this._previousPanelClass;
|
|
535
551
|
if (previousPanelClass && previousPanelClass.length) {
|
|
536
|
-
previousPanelClass.split(' ').forEach((
|
|
552
|
+
previousPanelClass.split(' ').forEach((/**
|
|
553
|
+
* @param {?} className
|
|
554
|
+
* @return {?}
|
|
555
|
+
*/
|
|
556
|
+
(className) => {
|
|
537
557
|
this._classList[className] = false;
|
|
538
|
-
});
|
|
558
|
+
}));
|
|
539
559
|
}
|
|
540
560
|
this._previousPanelClass = classes;
|
|
541
561
|
if (classes && classes.length) {
|
|
542
|
-
classes.split(' ').forEach((
|
|
562
|
+
classes.split(' ').forEach((/**
|
|
563
|
+
* @param {?} className
|
|
564
|
+
* @return {?}
|
|
565
|
+
*/
|
|
566
|
+
(className) => {
|
|
543
567
|
this._classList[className] = true;
|
|
544
|
-
});
|
|
568
|
+
}));
|
|
545
569
|
this._elementRef.nativeElement.className = '';
|
|
546
570
|
}
|
|
547
571
|
}
|
|
@@ -570,7 +594,10 @@ class MatMenu {
|
|
|
570
594
|
*/
|
|
571
595
|
ngAfterContentInit() {
|
|
572
596
|
this._keyManager = new FocusKeyManager(this._items).withWrap().withTypeAhead();
|
|
573
|
-
this._tabSubscription = this._keyManager.tabOut.subscribe((
|
|
597
|
+
this._tabSubscription = this._keyManager.tabOut.subscribe((/**
|
|
598
|
+
* @return {?}
|
|
599
|
+
*/
|
|
600
|
+
() => this.closed.emit('tab')));
|
|
574
601
|
}
|
|
575
602
|
/**
|
|
576
603
|
* @return {?}
|
|
@@ -584,7 +611,15 @@ class MatMenu {
|
|
|
584
611
|
* @return {?}
|
|
585
612
|
*/
|
|
586
613
|
_hovered() {
|
|
587
|
-
return this._itemChanges.pipe(startWith(this._items), switchMap(
|
|
614
|
+
return this._itemChanges.pipe(startWith(this._items), switchMap((/**
|
|
615
|
+
* @param {?} items
|
|
616
|
+
* @return {?}
|
|
617
|
+
*/
|
|
618
|
+
items => merge(...items.map((/**
|
|
619
|
+
* @param {?} item
|
|
620
|
+
* @return {?}
|
|
621
|
+
*/
|
|
622
|
+
item => item._hovered))))));
|
|
588
623
|
}
|
|
589
624
|
/**
|
|
590
625
|
* Handle a keyboard event from the menu, delegating to the appropriate action.
|
|
@@ -634,7 +669,10 @@ class MatMenu {
|
|
|
634
669
|
if (this.lazyContent) {
|
|
635
670
|
this._ngZone.onStable.asObservable()
|
|
636
671
|
.pipe(take(1))
|
|
637
|
-
.subscribe((
|
|
672
|
+
.subscribe((/**
|
|
673
|
+
* @return {?}
|
|
674
|
+
*/
|
|
675
|
+
() => this._keyManager.setFocusOrigin(origin).setFirstItemActive()));
|
|
638
676
|
}
|
|
639
677
|
else {
|
|
640
678
|
this._keyManager.setFocusOrigin(origin).setFirstItemActive();
|
|
@@ -658,7 +696,11 @@ class MatMenu {
|
|
|
658
696
|
/** @type {?} */
|
|
659
697
|
const newElevation = `mat-elevation-z${MAT_MENU_BASE_ELEVATION + depth}`;
|
|
660
698
|
/** @type {?} */
|
|
661
|
-
const customElevation = Object.keys(this._classList).find(
|
|
699
|
+
const customElevation = Object.keys(this._classList).find((/**
|
|
700
|
+
* @param {?} c
|
|
701
|
+
* @return {?}
|
|
702
|
+
*/
|
|
703
|
+
c => c.startsWith('mat-elevation-z')));
|
|
662
704
|
if (!customElevation || customElevation === this._previousElevation) {
|
|
663
705
|
if (this._previousElevation) {
|
|
664
706
|
this._classList[this._previousElevation] = false;
|
|
@@ -756,29 +798,13 @@ class MatMenu {
|
|
|
756
798
|
}
|
|
757
799
|
}
|
|
758
800
|
}
|
|
759
|
-
MatMenu.decorators = [
|
|
760
|
-
{ type: Component, args: [{selector: 'mat-menu',
|
|
761
|
-
template: "<ng-template><div class=\"mat-menu-panel\" [ngClass]=\"_classList\" (keydown)=\"_handleKeydown($event)\" (click)=\"closed.emit('click')\" [@transformMenu]=\"_panelAnimationState\" (@transformMenu.start)=\"_onAnimationStart($event)\" (@transformMenu.done)=\"_onAnimationDone($event)\" tabindex=\"-1\" role=\"menu\"><div class=\"mat-menu-content\"><ng-content></ng-content></div></div></ng-template>",
|
|
762
|
-
styles: [".mat-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 48px);border-radius:4px;outline:0}.mat-menu-panel.ng-animating{pointer-events:none}@media (-ms-high-contrast:active){.mat-menu-panel{outline:solid 1px}}.mat-menu-content:not(:empty){padding-top:8px;padding-bottom:8px}.mat-menu-item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative}.mat-menu-item::-moz-focus-inner{border:0}.mat-menu-item[disabled]{cursor:default}[dir=rtl] .mat-menu-item{text-align:right}.mat-menu-item .mat-icon{margin-right:16px;vertical-align:middle}.mat-menu-item .mat-icon svg{vertical-align:top}[dir=rtl] .mat-menu-item .mat-icon{margin-left:16px;margin-right:0}@media (-ms-high-contrast:active){.mat-menu-item-highlighted,.mat-menu-item.cdk-keyboard-focused,.mat-menu-item.cdk-program-focused{outline:dotted 1px}}.mat-menu-item-submenu-trigger{padding-right:32px}.mat-menu-item-submenu-trigger::after{width:0;height:0;border-style:solid;border-width:5px 0 5px 5px;border-color:transparent transparent transparent currentColor;content:'';display:inline-block;position:absolute;top:50%;right:16px;transform:translateY(-50%)}[dir=rtl] .mat-menu-item-submenu-trigger{padding-right:16px;padding-left:32px}[dir=rtl] .mat-menu-item-submenu-trigger::after{right:auto;left:16px;transform:rotateY(180deg) translateY(-50%)}button.mat-menu-item{width:100%}.mat-menu-item .mat-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}"],
|
|
763
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
764
|
-
encapsulation: ViewEncapsulation.None,
|
|
765
|
-
exportAs: 'matMenu',
|
|
766
|
-
animations: [
|
|
767
|
-
matMenuAnimations.transformMenu,
|
|
768
|
-
matMenuAnimations.fadeInItems
|
|
769
|
-
],
|
|
770
|
-
providers: [
|
|
771
|
-
{ provide: MAT_MENU_PANEL, useExisting: MatMenu }
|
|
772
|
-
]
|
|
773
|
-
},] },
|
|
774
|
-
];
|
|
775
801
|
/** @nocollapse */
|
|
776
|
-
|
|
802
|
+
_MatMenuBase.ctorParameters = () => [
|
|
777
803
|
{ type: ElementRef },
|
|
778
804
|
{ type: NgZone },
|
|
779
805
|
{ type: undefined, decorators: [{ type: Inject, args: [MAT_MENU_DEFAULT_OPTIONS,] }] }
|
|
780
806
|
];
|
|
781
|
-
|
|
807
|
+
_MatMenuBase.propDecorators = {
|
|
782
808
|
backdropClass: [{ type: Input }],
|
|
783
809
|
xPosition: [{ type: Input }],
|
|
784
810
|
yPosition: [{ type: Input }],
|
|
@@ -792,10 +818,56 @@ MatMenu.propDecorators = {
|
|
|
792
818
|
closed: [{ type: Output }],
|
|
793
819
|
close: [{ type: Output }]
|
|
794
820
|
};
|
|
821
|
+
class MatMenu extends _MatMenuBase {
|
|
822
|
+
}
|
|
823
|
+
// Note on the weird inheritance setup: we need three classes, because the MDC-based menu has to
|
|
824
|
+
// extend `MatMenu`, however keeping a reference to it will cause the inlined template and styles
|
|
825
|
+
// to be retained as well. The MDC menu also has to provide itself as a `MatMenu` in order for
|
|
826
|
+
// queries and DI to work correctly, while still not referencing the actual menu class.
|
|
827
|
+
// Class responsibility is split up as follows:
|
|
828
|
+
// * _MatMenuBase - provides all the functionality without any of the Angular metadata.
|
|
829
|
+
// * MatMenu - keeps the same name symbol name as the current menu and
|
|
830
|
+
// is used as a provider for DI and query purposes.
|
|
831
|
+
// * _MatMenu - the actual menu component implementation with the Angular metadata that should
|
|
832
|
+
// be tree shaken away for MDC.
|
|
833
|
+
// tslint:disable-next-line:class-name
|
|
834
|
+
class _MatMenu extends MatMenu {
|
|
835
|
+
/**
|
|
836
|
+
* @param {?} elementRef
|
|
837
|
+
* @param {?} ngZone
|
|
838
|
+
* @param {?} defaultOptions
|
|
839
|
+
*/
|
|
840
|
+
constructor(elementRef, ngZone, defaultOptions) {
|
|
841
|
+
super(elementRef, ngZone, defaultOptions);
|
|
842
|
+
}
|
|
843
|
+
}
|
|
844
|
+
_MatMenu.decorators = [
|
|
845
|
+
{ type: Component, args: [{selector: 'mat-menu',
|
|
846
|
+
template: "<ng-template><div class=\"mat-menu-panel\" [ngClass]=\"_classList\" (keydown)=\"_handleKeydown($event)\" (click)=\"closed.emit('click')\" [@transformMenu]=\"_panelAnimationState\" (@transformMenu.start)=\"_onAnimationStart($event)\" (@transformMenu.done)=\"_onAnimationDone($event)\" tabindex=\"-1\" role=\"menu\"><div class=\"mat-menu-content\"><ng-content></ng-content></div></div></ng-template>",
|
|
847
|
+
styles: [".mat-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 48px);border-radius:4px;outline:0;min-height:64px}.mat-menu-panel.ng-animating{pointer-events:none}@media (-ms-high-contrast:active){.mat-menu-panel{outline:solid 1px}}.mat-menu-content:not(:empty){padding-top:8px;padding-bottom:8px}.mat-menu-item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;-webkit-tap-highlight-color:transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative}.mat-menu-item::-moz-focus-inner{border:0}.mat-menu-item[disabled]{cursor:default}[dir=rtl] .mat-menu-item{text-align:right}.mat-menu-item .mat-icon{margin-right:16px;vertical-align:middle}.mat-menu-item .mat-icon svg{vertical-align:top}[dir=rtl] .mat-menu-item .mat-icon{margin-left:16px;margin-right:0}@media (-ms-high-contrast:active){.mat-menu-item-highlighted,.mat-menu-item.cdk-keyboard-focused,.mat-menu-item.cdk-program-focused{outline:dotted 1px}}.mat-menu-item-submenu-trigger{padding-right:32px}.mat-menu-item-submenu-trigger::after{width:0;height:0;border-style:solid;border-width:5px 0 5px 5px;border-color:transparent transparent transparent currentColor;content:'';display:inline-block;position:absolute;top:50%;right:16px;transform:translateY(-50%)}[dir=rtl] .mat-menu-item-submenu-trigger{padding-right:16px;padding-left:32px}[dir=rtl] .mat-menu-item-submenu-trigger::after{right:auto;left:16px;transform:rotateY(180deg) translateY(-50%)}button.mat-menu-item{width:100%}.mat-menu-item .mat-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}"],
|
|
848
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
849
|
+
encapsulation: ViewEncapsulation.None,
|
|
850
|
+
exportAs: 'matMenu',
|
|
851
|
+
animations: [
|
|
852
|
+
matMenuAnimations.transformMenu,
|
|
853
|
+
matMenuAnimations.fadeInItems
|
|
854
|
+
],
|
|
855
|
+
providers: [
|
|
856
|
+
{ provide: MAT_MENU_PANEL, useExisting: MatMenu },
|
|
857
|
+
{ provide: MatMenu, useExisting: _MatMenu }
|
|
858
|
+
]
|
|
859
|
+
},] },
|
|
860
|
+
];
|
|
861
|
+
/** @nocollapse */
|
|
862
|
+
_MatMenu.ctorParameters = () => [
|
|
863
|
+
{ type: ElementRef },
|
|
864
|
+
{ type: NgZone },
|
|
865
|
+
{ type: undefined, decorators: [{ type: Inject, args: [MAT_MENU_DEFAULT_OPTIONS,] }] }
|
|
866
|
+
];
|
|
795
867
|
|
|
796
868
|
/**
|
|
797
869
|
* @fileoverview added by tsickle
|
|
798
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
870
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
799
871
|
*/
|
|
800
872
|
/**
|
|
801
873
|
* Injection token that determines the scroll handling while the menu is open.
|
|
@@ -808,7 +880,10 @@ const MAT_MENU_SCROLL_STRATEGY = new InjectionToken('mat-menu-scroll-strategy');
|
|
|
808
880
|
* @return {?}
|
|
809
881
|
*/
|
|
810
882
|
function MAT_MENU_SCROLL_STRATEGY_FACTORY(overlay) {
|
|
811
|
-
return (
|
|
883
|
+
return (/**
|
|
884
|
+
* @return {?}
|
|
885
|
+
*/
|
|
886
|
+
() => overlay.scrollStrategies.reposition());
|
|
812
887
|
}
|
|
813
888
|
/**
|
|
814
889
|
* \@docs-private
|
|
@@ -862,7 +937,10 @@ class MatMenuTrigger {
|
|
|
862
937
|
* Handles touch start events on the trigger.
|
|
863
938
|
* Needs to be an arrow function so we can easily use addEventListener and removeEventListener.
|
|
864
939
|
*/
|
|
865
|
-
this._handleTouchStart = (
|
|
940
|
+
this._handleTouchStart = (/**
|
|
941
|
+
* @return {?}
|
|
942
|
+
*/
|
|
943
|
+
() => this._openedBy = 'touch');
|
|
866
944
|
// Tracking input type is necessary so it's possible to only auto-focus
|
|
867
945
|
// the first item of the list when the menu is opened via the keyboard
|
|
868
946
|
this._openedBy = null;
|
|
@@ -929,13 +1007,17 @@ class MatMenuTrigger {
|
|
|
929
1007
|
this._menu = menu;
|
|
930
1008
|
this._menuCloseSubscription.unsubscribe();
|
|
931
1009
|
if (menu) {
|
|
932
|
-
this._menuCloseSubscription = menu.close.asObservable().subscribe(
|
|
1010
|
+
this._menuCloseSubscription = menu.close.asObservable().subscribe((/**
|
|
1011
|
+
* @param {?} reason
|
|
1012
|
+
* @return {?}
|
|
1013
|
+
*/
|
|
1014
|
+
reason => {
|
|
933
1015
|
this._destroyMenu();
|
|
934
1016
|
// If a click closed the menu, we should close the entire chain of nested menus.
|
|
935
1017
|
if ((reason === 'click' || reason === 'tab') && this._parentMenu) {
|
|
936
1018
|
this._parentMenu.closed.emit(reason);
|
|
937
1019
|
}
|
|
938
|
-
});
|
|
1020
|
+
}));
|
|
939
1021
|
}
|
|
940
1022
|
}
|
|
941
1023
|
/**
|
|
@@ -954,8 +1036,9 @@ class MatMenuTrigger {
|
|
|
954
1036
|
this._overlayRef = null;
|
|
955
1037
|
}
|
|
956
1038
|
this._element.nativeElement.removeEventListener('touchstart', this._handleTouchStart, passiveEventListenerOptions);
|
|
957
|
-
this.
|
|
1039
|
+
this._menuCloseSubscription.unsubscribe();
|
|
958
1040
|
this._closingActionsSubscription.unsubscribe();
|
|
1041
|
+
this._hoverSubscription.unsubscribe();
|
|
959
1042
|
}
|
|
960
1043
|
/**
|
|
961
1044
|
* Whether the menu is open.
|
|
@@ -1005,7 +1088,10 @@ class MatMenuTrigger {
|
|
|
1005
1088
|
if (this.menu.lazyContent) {
|
|
1006
1089
|
this.menu.lazyContent.attach(this.menuData);
|
|
1007
1090
|
}
|
|
1008
|
-
this._closingActionsSubscription = this._menuClosingActions().subscribe((
|
|
1091
|
+
this._closingActionsSubscription = this._menuClosingActions().subscribe((/**
|
|
1092
|
+
* @return {?}
|
|
1093
|
+
*/
|
|
1094
|
+
() => this.closeMenu()));
|
|
1009
1095
|
this._initMenu();
|
|
1010
1096
|
if (this.menu instanceof MatMenu) {
|
|
1011
1097
|
this.menu._startAnimation();
|
|
@@ -1049,13 +1135,23 @@ class MatMenuTrigger {
|
|
|
1049
1135
|
if (menu.lazyContent) {
|
|
1050
1136
|
// Wait for the exit animation to finish before detaching the content.
|
|
1051
1137
|
menu._animationDone
|
|
1052
|
-
.pipe(filter(
|
|
1138
|
+
.pipe(filter((/**
|
|
1139
|
+
* @param {?} event
|
|
1140
|
+
* @return {?}
|
|
1141
|
+
*/
|
|
1142
|
+
event => event.toState === 'void')), take(1),
|
|
1053
1143
|
// Interrupt if the content got re-attached.
|
|
1054
1144
|
takeUntil(menu.lazyContent._attached))
|
|
1055
|
-
.subscribe((
|
|
1145
|
+
.subscribe((/**
|
|
1146
|
+
* @return {?}
|
|
1147
|
+
*/
|
|
1148
|
+
() => (/** @type {?} */ (menu.lazyContent)).detach()), undefined, (/**
|
|
1149
|
+
* @return {?}
|
|
1150
|
+
*/
|
|
1151
|
+
() => {
|
|
1056
1152
|
// No matter whether the content got re-attached, reset the menu.
|
|
1057
1153
|
this._resetMenu();
|
|
1058
|
-
});
|
|
1154
|
+
}));
|
|
1059
1155
|
}
|
|
1060
1156
|
else {
|
|
1061
1157
|
this._resetMenu();
|
|
@@ -1175,7 +1271,7 @@ class MatMenuTrigger {
|
|
|
1175
1271
|
positionStrategy: this._overlay.position()
|
|
1176
1272
|
.flexibleConnectedTo(this._element)
|
|
1177
1273
|
.withLockedPosition()
|
|
1178
|
-
.withTransformOriginOn('.mat-menu-panel'),
|
|
1274
|
+
.withTransformOriginOn('.mat-menu-panel, .mat-mdc-menu-panel'),
|
|
1179
1275
|
backdropClass: this.menu.backdropClass || 'cdk-overlay-transparent-backdrop',
|
|
1180
1276
|
scrollStrategy: this._scrollStrategy(),
|
|
1181
1277
|
direction: this._dir
|
|
@@ -1191,13 +1287,17 @@ class MatMenuTrigger {
|
|
|
1191
1287
|
*/
|
|
1192
1288
|
_subscribeToPositions(position) {
|
|
1193
1289
|
if (this.menu.setPositionClasses) {
|
|
1194
|
-
position.positionChanges.subscribe(
|
|
1290
|
+
position.positionChanges.subscribe((/**
|
|
1291
|
+
* @param {?} change
|
|
1292
|
+
* @return {?}
|
|
1293
|
+
*/
|
|
1294
|
+
change => {
|
|
1195
1295
|
/** @type {?} */
|
|
1196
1296
|
const posX = change.connectionPair.overlayX === 'start' ? 'after' : 'before';
|
|
1197
1297
|
/** @type {?} */
|
|
1198
1298
|
const posY = change.connectionPair.overlayY === 'top' ? 'below' : 'above';
|
|
1199
1299
|
(/** @type {?} */ (this.menu.setPositionClasses))(posX, posY);
|
|
1200
|
-
});
|
|
1300
|
+
}));
|
|
1201
1301
|
}
|
|
1202
1302
|
}
|
|
1203
1303
|
/**
|
|
@@ -1244,15 +1344,6 @@ class MatMenuTrigger {
|
|
|
1244
1344
|
}
|
|
1245
1345
|
]);
|
|
1246
1346
|
}
|
|
1247
|
-
/**
|
|
1248
|
-
* Cleans up the active subscriptions.
|
|
1249
|
-
* @private
|
|
1250
|
-
* @return {?}
|
|
1251
|
-
*/
|
|
1252
|
-
_cleanUpSubscriptions() {
|
|
1253
|
-
this._closingActionsSubscription.unsubscribe();
|
|
1254
|
-
this._hoverSubscription.unsubscribe();
|
|
1255
|
-
}
|
|
1256
1347
|
/**
|
|
1257
1348
|
* Returns a stream that emits whenever an action that should close the menu occurs.
|
|
1258
1349
|
* @private
|
|
@@ -1266,7 +1357,14 @@ class MatMenuTrigger {
|
|
|
1266
1357
|
/** @type {?} */
|
|
1267
1358
|
const parentClose = this._parentMenu ? this._parentMenu.closed : of();
|
|
1268
1359
|
/** @type {?} */
|
|
1269
|
-
const hover = this._parentMenu ? this._parentMenu._hovered().pipe(filter(
|
|
1360
|
+
const hover = this._parentMenu ? this._parentMenu._hovered().pipe(filter((/**
|
|
1361
|
+
* @param {?} active
|
|
1362
|
+
* @return {?}
|
|
1363
|
+
*/
|
|
1364
|
+
active => active !== this._menuItemInstance)), filter((/**
|
|
1365
|
+
* @return {?}
|
|
1366
|
+
*/
|
|
1367
|
+
() => this._menuOpen))) : of();
|
|
1270
1368
|
return merge(backdrop, parentClose, hover, detachments);
|
|
1271
1369
|
}
|
|
1272
1370
|
/**
|
|
@@ -1329,8 +1427,15 @@ class MatMenuTrigger {
|
|
|
1329
1427
|
// Since we might have multiple competing triggers for the same menu (e.g. a sub-menu
|
|
1330
1428
|
// with different data and triggers), we have to delay it by a tick to ensure that
|
|
1331
1429
|
// it won't be closed immediately after it is opened.
|
|
1332
|
-
.pipe(filter(
|
|
1333
|
-
|
|
1430
|
+
.pipe(filter((/**
|
|
1431
|
+
* @param {?} active
|
|
1432
|
+
* @return {?}
|
|
1433
|
+
*/
|
|
1434
|
+
active => active === this._menuItemInstance && !active.disabled)), delay(0, asapScheduler))
|
|
1435
|
+
.subscribe((/**
|
|
1436
|
+
* @return {?}
|
|
1437
|
+
*/
|
|
1438
|
+
() => {
|
|
1334
1439
|
this._openedBy = 'mouse';
|
|
1335
1440
|
// If the same menu is used between multiple triggers, it might still be animating
|
|
1336
1441
|
// while the new trigger tries to re-open it. Wait for the animation to finish
|
|
@@ -1340,12 +1445,15 @@ class MatMenuTrigger {
|
|
|
1340
1445
|
// 'changed after checked' errors in some cases. See #12194.
|
|
1341
1446
|
this.menu._animationDone
|
|
1342
1447
|
.pipe(take(1), delay(0, asapScheduler), takeUntil(this._parentMenu._hovered()))
|
|
1343
|
-
.subscribe((
|
|
1448
|
+
.subscribe((/**
|
|
1449
|
+
* @return {?}
|
|
1450
|
+
*/
|
|
1451
|
+
() => this.openMenu()));
|
|
1344
1452
|
}
|
|
1345
1453
|
else {
|
|
1346
1454
|
this.openMenu();
|
|
1347
1455
|
}
|
|
1348
|
-
});
|
|
1456
|
+
}));
|
|
1349
1457
|
}
|
|
1350
1458
|
/**
|
|
1351
1459
|
* Gets the portal that should be attached to the overlay.
|
|
@@ -1399,8 +1507,22 @@ MatMenuTrigger.propDecorators = {
|
|
|
1399
1507
|
|
|
1400
1508
|
/**
|
|
1401
1509
|
* @fileoverview added by tsickle
|
|
1402
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1510
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1511
|
+
*/
|
|
1512
|
+
/**
|
|
1513
|
+
* Used by both the current `MatMenuModule` and the MDC `MatMenuModule`
|
|
1514
|
+
* to declare the menu-related directives.
|
|
1403
1515
|
*/
|
|
1516
|
+
// tslint:disable-next-line:class-name
|
|
1517
|
+
class _MatMenuDirectivesModule {
|
|
1518
|
+
}
|
|
1519
|
+
_MatMenuDirectivesModule.decorators = [
|
|
1520
|
+
{ type: NgModule, args: [{
|
|
1521
|
+
exports: [MatMenuTrigger, MatMenuContent, MatCommonModule],
|
|
1522
|
+
declarations: [MatMenuTrigger, MatMenuContent],
|
|
1523
|
+
providers: [MAT_MENU_SCROLL_STRATEGY_FACTORY_PROVIDER]
|
|
1524
|
+
},] },
|
|
1525
|
+
];
|
|
1404
1526
|
class MatMenuModule {
|
|
1405
1527
|
}
|
|
1406
1528
|
MatMenuModule.decorators = [
|
|
@@ -1410,27 +1532,28 @@ MatMenuModule.decorators = [
|
|
|
1410
1532
|
MatCommonModule,
|
|
1411
1533
|
MatRippleModule,
|
|
1412
1534
|
OverlayModule,
|
|
1535
|
+
_MatMenuDirectivesModule,
|
|
1413
1536
|
],
|
|
1414
|
-
exports: [
|
|
1415
|
-
declarations: [
|
|
1537
|
+
exports: [_MatMenu, MatMenuItem, _MatMenuDirectivesModule],
|
|
1538
|
+
declarations: [_MatMenu, MatMenuItem],
|
|
1416
1539
|
providers: [MAT_MENU_SCROLL_STRATEGY_FACTORY_PROVIDER]
|
|
1417
1540
|
},] },
|
|
1418
1541
|
];
|
|
1419
1542
|
|
|
1420
1543
|
/**
|
|
1421
1544
|
* @fileoverview added by tsickle
|
|
1422
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1545
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1423
1546
|
*/
|
|
1424
1547
|
|
|
1425
1548
|
/**
|
|
1426
1549
|
* @fileoverview added by tsickle
|
|
1427
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1550
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1428
1551
|
*/
|
|
1429
1552
|
|
|
1430
1553
|
/**
|
|
1431
1554
|
* @fileoverview added by tsickle
|
|
1432
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1555
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1433
1556
|
*/
|
|
1434
1557
|
|
|
1435
|
-
export {
|
|
1558
|
+
export { MatMenu, MAT_MENU_DEFAULT_OPTIONS, _MatMenu, _MatMenuBase, MatMenuItem, MatMenuTrigger, MAT_MENU_SCROLL_STRATEGY, MAT_MENU_PANEL, _MatMenuDirectivesModule, MatMenuModule, matMenuAnimations, fadeInItems, transformMenu, MatMenuContent, MAT_MENU_DEFAULT_OPTIONS_FACTORY as ɵa24, MAT_MENU_SCROLL_STRATEGY_FACTORY as ɵb24, MAT_MENU_SCROLL_STRATEGY_FACTORY_PROVIDER as ɵc24 };
|
|
1436
1559
|
//# sourceMappingURL=menu.js.map
|