@angular/material 6.4.2 → 6.4.7
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 +9 -5
- package/autocomplete/typings/autocomplete-trigger.d.ts +12 -1
- package/autocomplete/typings/autocomplete.d.ts +1 -1
- package/autocomplete/typings/index.d.ts +1 -1
- package/autocomplete/typings/index.metadata.json +1 -1
- package/badge/typings/badge.d.ts +6 -2
- package/badge/typings/index.metadata.json +1 -1
- package/bottom-sheet/typings/bottom-sheet-container.d.ts +1 -1
- package/bottom-sheet/typings/index.metadata.json +1 -1
- package/bundles/material-autocomplete.umd.js +33 -2
- 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 +6 -2
- 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.map +1 -1
- package/bundles/material-bottom-sheet.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 +1 -1
- package/bundles/material-button-toggle.umd.min.js.map +1 -1
- package/bundles/material-button.umd.js +2 -2
- 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 +1 -1
- package/bundles/material-card.umd.js.map +1 -1
- package/bundles/material-card.umd.min.js +1 -1
- package/bundles/material-card.umd.min.js.map +1 -1
- package/bundles/material-checkbox.umd.js +7 -1
- 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 +113 -94
- 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 +13 -16
- package/bundles/material-core.umd.js.map +1 -1
- package/bundles/material-core.umd.min.js +2 -2
- package/bundles/material-core.umd.min.js.map +1 -1
- package/bundles/material-datepicker.umd.js +35 -38
- 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.map +1 -1
- package/bundles/material-dialog.umd.min.js.map +1 -1
- package/bundles/material-expansion.umd.js +200 -74
- 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 +62 -51
- 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 +10 -34
- 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.map +1 -1
- package/bundles/material-icon.umd.min.js.map +1 -1
- package/bundles/material-input.umd.js +13 -6
- 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 +12 -14
- package/bundles/material-list.umd.js.map +1 -1
- package/bundles/material-list.umd.min.js +5 -5
- package/bundles/material-list.umd.min.js.map +1 -1
- package/bundles/material-menu.umd.js +25 -16
- 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 +1 -1
- 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 +29 -11
- 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-radio.umd.js.map +1 -1
- package/bundles/material-radio.umd.min.js.map +1 -1
- package/bundles/material-select.umd.js +8 -3
- 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 +5 -1
- 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 +8 -2
- 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 +1 -1
- 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 +1 -1
- 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-stepper.umd.js +30 -18
- 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 +31 -31
- 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 +38 -45
- 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-tooltip.umd.js +11 -11
- package/bundles/material-tooltip.umd.js.map +1 -1
- package/bundles/material-tooltip.umd.min.js +1 -1
- package/bundles/material-tooltip.umd.min.js.map +1 -1
- package/bundles/material-tree.umd.js +16 -4
- 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 +692 -452
- package/bundles/material.umd.js.map +1 -1
- package/bundles/material.umd.min.js +21 -21
- package/bundles/material.umd.min.js.map +1 -1
- package/button/typings/index.metadata.json +1 -1
- package/button-toggle/typings/button-toggle.d.ts +4 -2
- package/button-toggle/typings/index.metadata.json +1 -1
- package/card/typings/index.metadata.json +1 -1
- package/checkbox/typings/checkbox.d.ts +2 -2
- package/checkbox/typings/index.metadata.json +1 -1
- package/chips/typings/chip-input.d.ts +9 -9
- package/chips/typings/chip-list.d.ts +12 -19
- 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/line/line.d.ts +1 -1
- package/core/typings/option/option.d.ts +3 -4
- package/core/typings/ripple/ripple-renderer.d.ts +1 -1
- package/core/typings/ripple/ripple.d.ts +1 -1
- package/datepicker/typings/calendar-body.d.ts +1 -1
- package/datepicker/typings/datepicker-input.d.ts +3 -5
- package/datepicker/typings/datepicker-toggle.d.ts +3 -1
- package/datepicker/typings/datepicker.d.ts +1 -1
- package/datepicker/typings/index.metadata.json +1 -1
- package/dialog/typings/dialog-container.d.ts +1 -1
- package/dialog/typings/dialog-content-directives.d.ts +2 -2
- package/dialog/typings/index.metadata.json +1 -1
- package/esm2015/autocomplete.js +30 -2
- package/esm2015/autocomplete.js.map +1 -1
- package/esm2015/badge.js +8 -3
- package/esm2015/badge.js.map +1 -1
- package/esm2015/bottom-sheet.js.map +1 -1
- package/esm2015/button-toggle.js +14 -4
- package/esm2015/button-toggle.js.map +1 -1
- package/esm2015/button.js +2 -2
- package/esm2015/button.js.map +1 -1
- package/esm2015/card.js +1 -1
- package/esm2015/card.js.map +1 -1
- package/esm2015/checkbox.js +6 -1
- package/esm2015/checkbox.js.map +1 -1
- package/esm2015/chips.js +99 -76
- package/esm2015/chips.js.map +1 -1
- package/esm2015/core.js +10 -7
- package/esm2015/core.js.map +1 -1
- package/esm2015/datepicker.js +35 -30
- package/esm2015/datepicker.js.map +1 -1
- package/esm2015/dialog.js.map +1 -1
- package/esm2015/expansion.js +158 -66
- package/esm2015/expansion.js.map +1 -1
- package/esm2015/form-field.js +60 -49
- package/esm2015/form-field.js.map +1 -1
- package/esm2015/grid-list.js +7 -30
- package/esm2015/grid-list.js.map +1 -1
- package/esm2015/icon.js.map +1 -1
- package/esm2015/input.js +13 -7
- package/esm2015/input.js.map +1 -1
- package/esm2015/list.js +11 -13
- package/esm2015/list.js.map +1 -1
- package/esm2015/material.js +10 -10
- package/esm2015/material.js.map +1 -1
- package/esm2015/menu.js +18 -10
- package/esm2015/menu.js.map +1 -1
- package/esm2015/paginator.js +1 -1
- package/esm2015/paginator.js.map +1 -1
- package/esm2015/progress-bar.js +26 -7
- package/esm2015/progress-bar.js.map +1 -1
- package/esm2015/radio.js.map +1 -1
- package/esm2015/select.js +8 -3
- package/esm2015/select.js.map +1 -1
- package/esm2015/sidenav.js +5 -1
- package/esm2015/sidenav.js.map +1 -1
- package/esm2015/slide-toggle.js +7 -2
- package/esm2015/slide-toggle.js.map +1 -1
- package/esm2015/slider.js +1 -1
- package/esm2015/slider.js.map +1 -1
- package/esm2015/snack-bar.js +1 -1
- package/esm2015/snack-bar.js.map +1 -1
- package/esm2015/stepper.js +25 -21
- package/esm2015/stepper.js.map +1 -1
- package/esm2015/table.js +22 -32
- package/esm2015/table.js.map +1 -1
- package/esm2015/tabs.js +28 -41
- package/esm2015/tabs.js.map +1 -1
- package/esm2015/tooltip.js +9 -9
- package/esm2015/tooltip.js.map +1 -1
- package/esm2015/tree.js +13 -5
- package/esm2015/tree.js.map +1 -1
- package/esm5/autocomplete.es5.js +33 -2
- package/esm5/autocomplete.es5.js.map +1 -1
- package/esm5/badge.es5.js +7 -3
- package/esm5/badge.es5.js.map +1 -1
- package/esm5/bottom-sheet.es5.js.map +1 -1
- package/esm5/button-toggle.es5.js +13 -4
- package/esm5/button-toggle.es5.js.map +1 -1
- package/esm5/button.es5.js +2 -2
- package/esm5/button.es5.js.map +1 -1
- package/esm5/card.es5.js +1 -1
- package/esm5/card.es5.js.map +1 -1
- package/esm5/checkbox.es5.js +7 -1
- package/esm5/checkbox.es5.js.map +1 -1
- package/esm5/chips.es5.js +112 -93
- package/esm5/chips.es5.js.map +1 -1
- package/esm5/core.es5.js +10 -12
- package/esm5/core.es5.js.map +1 -1
- package/esm5/datepicker.es5.js +36 -39
- package/esm5/datepicker.es5.js.map +1 -1
- package/esm5/dialog.es5.js.map +1 -1
- package/esm5/expansion.es5.js +202 -78
- package/esm5/expansion.es5.js.map +1 -1
- package/esm5/form-field.es5.js +59 -47
- package/esm5/form-field.es5.js.map +1 -1
- package/esm5/grid-list.es5.js +7 -30
- package/esm5/grid-list.es5.js.map +1 -1
- package/esm5/icon.es5.js.map +1 -1
- package/esm5/input.es5.js +13 -7
- package/esm5/input.es5.js.map +1 -1
- package/esm5/list.es5.js +12 -14
- package/esm5/list.es5.js.map +1 -1
- package/esm5/material.es5.js +10 -10
- package/esm5/material.es5.js.map +1 -1
- package/esm5/menu.es5.js +17 -8
- package/esm5/menu.es5.js.map +1 -1
- package/esm5/paginator.es5.js +1 -1
- package/esm5/paginator.es5.js.map +1 -1
- package/esm5/progress-bar.es5.js +26 -10
- package/esm5/progress-bar.es5.js.map +1 -1
- package/esm5/radio.es5.js.map +1 -1
- package/esm5/select.es5.js +8 -3
- package/esm5/select.es5.js.map +1 -1
- package/esm5/sidenav.es5.js +5 -1
- package/esm5/sidenav.es5.js.map +1 -1
- package/esm5/slide-toggle.es5.js +8 -2
- package/esm5/slide-toggle.es5.js.map +1 -1
- package/esm5/slider.es5.js +1 -1
- package/esm5/slider.es5.js.map +1 -1
- package/esm5/snack-bar.es5.js +1 -1
- package/esm5/snack-bar.es5.js.map +1 -1
- package/esm5/stepper.es5.js +25 -17
- package/esm5/stepper.es5.js.map +1 -1
- package/esm5/table.es5.js +22 -30
- package/esm5/table.es5.js.map +1 -1
- package/esm5/tabs.es5.js +29 -36
- package/esm5/tabs.es5.js.map +1 -1
- package/esm5/tooltip.es5.js +11 -11
- package/esm5/tooltip.es5.js.map +1 -1
- package/esm5/tree.es5.js +13 -5
- package/esm5/tree.es5.js.map +1 -1
- package/expansion/typings/accordion-base.d.ts +30 -0
- package/expansion/typings/accordion.d.ts +18 -4
- package/expansion/typings/expansion-panel-header.d.ts +13 -2
- package/expansion/typings/expansion-panel.d.ts +10 -6
- package/expansion/typings/index.metadata.json +1 -1
- package/expansion/typings/public-api.d.ts +1 -0
- package/form-field/typings/form-field.d.ts +3 -5
- package/form-field/typings/index.metadata.json +1 -1
- package/grid-list/typings/grid-list.d.ts +1 -1
- package/grid-list/typings/grid-tile.d.ts +2 -2
- package/grid-list/typings/index.metadata.json +1 -1
- package/icon/typings/icon.d.ts +1 -1
- package/icon/typings/index.metadata.json +1 -1
- package/input/typings/autosize.d.ts +2 -1
- package/input/typings/index.metadata.json +1 -1
- package/input/typings/input.d.ts +2 -2
- package/list/typings/index.metadata.json +1 -1
- package/list/typings/list.d.ts +1 -1
- package/list/typings/selection-list.d.ts +4 -4
- package/menu/typings/index.d.ts +4 -4
- package/menu/typings/index.metadata.json +1 -1
- package/menu/typings/menu-content.d.ts +3 -0
- package/menu/typings/menu-directive.d.ts +1 -1
- package/menu/typings/menu-item.d.ts +1 -1
- package/menu/typings/menu-trigger.d.ts +1 -1
- package/package.json +7 -5
- package/paginator/typings/index.metadata.json +1 -1
- 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 +17 -3
- package/radio/typings/radio.d.ts +1 -1
- package/sidenav/typings/drawer.d.ts +2 -2
- 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 +3 -3
- package/slider/typings/index.metadata.json +1 -1
- package/snack-bar/typings/index.metadata.json +1 -1
- package/snack-bar/typings/snack-bar-container.d.ts +1 -1
- package/stepper/typings/index.metadata.json +1 -1
- package/stepper/typings/step-header.d.ts +2 -2
- package/stepper/typings/step-label.d.ts +2 -10
- package/stepper/typings/stepper-button.d.ts +4 -2
- package/stepper/typings/stepper.d.ts +4 -3
- package/table/typings/cell.d.ts +8 -5
- package/table/typings/index.metadata.json +1 -1
- package/table/typings/row.d.ts +6 -3
- package/table/typings/table.d.ts +2 -8
- package/tabs/typings/index.d.ts +5 -5
- package/tabs/typings/index.metadata.json +1 -1
- package/tabs/typings/ink-bar.d.ts +1 -1
- package/tabs/typings/tab-body.d.ts +1 -1
- package/tabs/typings/tab-label.d.ts +2 -10
- package/tabs/typings/tab.d.ts +2 -4
- package/tooltip/typings/index.metadata.json +1 -1
- package/tooltip/typings/tooltip.d.ts +3 -3
- package/tree/typings/index.metadata.json +1 -1
- package/tree/typings/node.d.ts +6 -5
- package/tree/typings/padding.d.ts +2 -1
- package/tree/typings/toggle.d.ts +9 -1
- package/tree/typings/tree.d.ts +9 -1
- package/typings/autocomplete/autocomplete-trigger.d.ts +12 -1
- package/typings/autocomplete/autocomplete.d.ts +1 -1
- package/typings/autocomplete/index.d.ts +1 -1
- package/typings/autocomplete/index.metadata.json +1 -1
- package/typings/badge/badge.d.ts +6 -2
- package/typings/badge/index.metadata.json +1 -1
- package/typings/bottom-sheet/bottom-sheet-container.d.ts +1 -1
- package/typings/bottom-sheet/index.metadata.json +1 -1
- package/typings/button/index.metadata.json +1 -1
- package/typings/button-toggle/button-toggle.d.ts +4 -2
- package/typings/button-toggle/index.metadata.json +1 -1
- package/typings/card/index.metadata.json +1 -1
- package/typings/checkbox/checkbox.d.ts +2 -2
- package/typings/checkbox/index.metadata.json +1 -1
- package/typings/chips/chip-input.d.ts +9 -9
- package/typings/chips/chip-list.d.ts +12 -19
- 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/line/line.d.ts +1 -1
- package/typings/core/option/option.d.ts +3 -4
- package/typings/core/ripple/ripple-renderer.d.ts +1 -1
- package/typings/core/ripple/ripple.d.ts +1 -1
- package/typings/datepicker/calendar-body.d.ts +1 -1
- package/typings/datepicker/datepicker-input.d.ts +3 -5
- package/typings/datepicker/datepicker-toggle.d.ts +3 -1
- package/typings/datepicker/datepicker.d.ts +1 -1
- package/typings/datepicker/index.metadata.json +1 -1
- package/typings/dialog/dialog-container.d.ts +1 -1
- package/typings/dialog/dialog-content-directives.d.ts +2 -2
- package/typings/dialog/index.metadata.json +1 -1
- package/typings/esm5/autocomplete/autocomplete-trigger.d.ts +12 -1
- package/typings/esm5/autocomplete/autocomplete.d.ts +1 -1
- package/typings/esm5/autocomplete/index.d.ts +1 -1
- package/typings/esm5/autocomplete/index.metadata.json +1 -1
- package/typings/esm5/badge/badge.d.ts +6 -2
- package/typings/esm5/badge/index.metadata.json +1 -1
- package/typings/esm5/bottom-sheet/bottom-sheet-container.d.ts +1 -1
- package/typings/esm5/bottom-sheet/index.metadata.json +1 -1
- package/typings/esm5/button/index.metadata.json +1 -1
- package/typings/esm5/button-toggle/button-toggle.d.ts +4 -2
- package/typings/esm5/button-toggle/index.metadata.json +1 -1
- package/typings/esm5/card/index.metadata.json +1 -1
- package/typings/esm5/checkbox/checkbox.d.ts +2 -2
- package/typings/esm5/checkbox/index.metadata.json +1 -1
- package/typings/esm5/chips/chip-input.d.ts +9 -9
- package/typings/esm5/chips/chip-list.d.ts +12 -19
- 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/line/line.d.ts +1 -1
- package/typings/esm5/core/option/option.d.ts +3 -4
- package/typings/esm5/core/ripple/ripple-renderer.d.ts +1 -1
- package/typings/esm5/core/ripple/ripple.d.ts +1 -1
- package/typings/esm5/datepicker/calendar-body.d.ts +1 -1
- package/typings/esm5/datepicker/datepicker-input.d.ts +3 -5
- package/typings/esm5/datepicker/datepicker-toggle.d.ts +3 -1
- package/typings/esm5/datepicker/datepicker.d.ts +1 -1
- package/typings/esm5/datepicker/index.metadata.json +1 -1
- package/typings/esm5/dialog/dialog-container.d.ts +1 -1
- package/typings/esm5/dialog/dialog-content-directives.d.ts +2 -2
- package/typings/esm5/dialog/index.metadata.json +1 -1
- package/typings/esm5/expansion/accordion-base.d.ts +30 -0
- package/typings/esm5/expansion/accordion.d.ts +18 -4
- package/typings/esm5/expansion/expansion-panel-header.d.ts +13 -2
- package/typings/esm5/expansion/expansion-panel.d.ts +10 -6
- package/typings/esm5/expansion/index.metadata.json +1 -1
- package/typings/esm5/expansion/public-api.d.ts +1 -0
- package/typings/esm5/form-field/form-field.d.ts +3 -5
- package/typings/esm5/form-field/index.metadata.json +1 -1
- package/typings/esm5/grid-list/grid-list.d.ts +1 -1
- package/typings/esm5/grid-list/grid-tile.d.ts +2 -2
- package/typings/esm5/grid-list/index.metadata.json +1 -1
- package/typings/esm5/icon/icon.d.ts +1 -1
- package/typings/esm5/icon/index.metadata.json +1 -1
- package/typings/esm5/index.metadata.json +1 -1
- package/typings/esm5/input/autosize.d.ts +2 -1
- package/typings/esm5/input/index.metadata.json +1 -1
- package/typings/esm5/input/input.d.ts +2 -2
- package/typings/esm5/list/index.metadata.json +1 -1
- package/typings/esm5/list/list.d.ts +1 -1
- package/typings/esm5/list/selection-list.d.ts +4 -4
- package/typings/esm5/menu/index.d.ts +4 -4
- package/typings/esm5/menu/index.metadata.json +1 -1
- package/typings/esm5/menu/menu-content.d.ts +3 -0
- package/typings/esm5/menu/menu-directive.d.ts +1 -1
- package/typings/esm5/menu/menu-item.d.ts +1 -1
- package/typings/esm5/menu/menu-trigger.d.ts +1 -1
- package/typings/esm5/paginator/index.metadata.json +1 -1
- package/typings/esm5/progress-bar/index.metadata.json +1 -1
- package/typings/esm5/progress-bar/progress-bar.d.ts +17 -3
- package/typings/esm5/radio/radio.d.ts +1 -1
- package/typings/esm5/sidenav/drawer.d.ts +2 -2
- 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 +3 -3
- package/typings/esm5/slider/index.metadata.json +1 -1
- package/typings/esm5/snack-bar/index.metadata.json +1 -1
- package/typings/esm5/snack-bar/snack-bar-container.d.ts +1 -1
- package/typings/esm5/stepper/index.metadata.json +1 -1
- package/typings/esm5/stepper/step-header.d.ts +2 -2
- package/typings/esm5/stepper/step-label.d.ts +2 -10
- package/typings/esm5/stepper/stepper-button.d.ts +4 -2
- package/typings/esm5/stepper/stepper.d.ts +4 -3
- package/typings/esm5/table/cell.d.ts +8 -5
- package/typings/esm5/table/index.metadata.json +1 -1
- package/typings/esm5/table/row.d.ts +6 -3
- package/typings/esm5/table/table.d.ts +2 -8
- package/typings/esm5/tabs/index.d.ts +5 -5
- package/typings/esm5/tabs/index.metadata.json +1 -1
- package/typings/esm5/tabs/ink-bar.d.ts +1 -1
- package/typings/esm5/tabs/tab-body.d.ts +1 -1
- package/typings/esm5/tabs/tab-label.d.ts +2 -10
- package/typings/esm5/tabs/tab.d.ts +2 -4
- package/typings/esm5/tooltip/index.metadata.json +1 -1
- package/typings/esm5/tooltip/tooltip.d.ts +3 -3
- package/typings/esm5/tree/index.metadata.json +1 -1
- package/typings/esm5/tree/node.d.ts +6 -5
- package/typings/esm5/tree/padding.d.ts +2 -1
- package/typings/esm5/tree/toggle.d.ts +9 -1
- package/typings/esm5/tree/tree.d.ts +9 -1
- package/typings/expansion/accordion-base.d.ts +30 -0
- package/typings/expansion/accordion.d.ts +18 -4
- package/typings/expansion/expansion-panel-header.d.ts +13 -2
- package/typings/expansion/expansion-panel.d.ts +10 -6
- package/typings/expansion/index.metadata.json +1 -1
- package/typings/expansion/public-api.d.ts +1 -0
- package/typings/form-field/form-field.d.ts +3 -5
- package/typings/form-field/index.metadata.json +1 -1
- package/typings/grid-list/grid-list.d.ts +1 -1
- package/typings/grid-list/grid-tile.d.ts +2 -2
- package/typings/grid-list/index.metadata.json +1 -1
- package/typings/icon/icon.d.ts +1 -1
- package/typings/icon/index.metadata.json +1 -1
- package/typings/index.metadata.json +1 -1
- package/typings/input/autosize.d.ts +2 -1
- package/typings/input/index.metadata.json +1 -1
- package/typings/input/input.d.ts +2 -2
- package/typings/list/index.metadata.json +1 -1
- package/typings/list/list.d.ts +1 -1
- package/typings/list/selection-list.d.ts +4 -4
- package/typings/menu/index.d.ts +4 -4
- package/typings/menu/index.metadata.json +1 -1
- package/typings/menu/menu-content.d.ts +3 -0
- package/typings/menu/menu-directive.d.ts +1 -1
- package/typings/menu/menu-item.d.ts +1 -1
- package/typings/menu/menu-trigger.d.ts +1 -1
- package/typings/paginator/index.metadata.json +1 -1
- package/typings/progress-bar/index.metadata.json +1 -1
- package/typings/progress-bar/progress-bar.d.ts +17 -3
- package/typings/radio/radio.d.ts +1 -1
- package/typings/sidenav/drawer.d.ts +2 -2
- 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 +3 -3
- package/typings/slider/index.metadata.json +1 -1
- package/typings/snack-bar/index.metadata.json +1 -1
- package/typings/snack-bar/snack-bar-container.d.ts +1 -1
- package/typings/stepper/index.metadata.json +1 -1
- package/typings/stepper/step-header.d.ts +2 -2
- package/typings/stepper/step-label.d.ts +2 -10
- package/typings/stepper/stepper-button.d.ts +4 -2
- package/typings/stepper/stepper.d.ts +4 -3
- package/typings/table/cell.d.ts +8 -5
- package/typings/table/index.metadata.json +1 -1
- package/typings/table/row.d.ts +6 -3
- package/typings/table/table.d.ts +2 -8
- package/typings/tabs/index.d.ts +5 -5
- package/typings/tabs/index.metadata.json +1 -1
- package/typings/tabs/ink-bar.d.ts +1 -1
- package/typings/tabs/tab-body.d.ts +1 -1
- package/typings/tabs/tab-label.d.ts +2 -10
- package/typings/tabs/tab.d.ts +2 -4
- package/typings/tooltip/index.metadata.json +1 -1
- package/typings/tooltip/tooltip.d.ts +3 -3
- package/typings/tree/index.metadata.json +1 -1
- package/typings/tree/node.d.ts +6 -5
- package/typings/tree/padding.d.ts +2 -1
- package/typings/tree/toggle.d.ts +9 -1
- package/typings/tree/tree.d.ts +9 -1
- package/grid-list/typings/grid-list-measure.d.ts +0 -17
- package/typings/esm5/grid-list/grid-list-measure.d.ts +0 -17
- package/typings/grid-list/grid-list-measure.d.ts +0 -17
package/esm5/tooltip.es5.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.es5.js","sources":["../../../src/lib/tooltip/tooltip-module.ts","../../../src/lib/tooltip/tooltip.ts","../../../src/lib/tooltip/tooltip-animations.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {OverlayModule} from '@angular/cdk/overlay';\nimport {A11yModule} from '@angular/cdk/a11y';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {\n MatTooltip,\n TooltipComponent,\n MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER,\n} from './tooltip';\n\n@NgModule({\n imports: [\n A11yModule,\n CommonModule,\n OverlayModule,\n MatCommonModule,\n ],\n exports: [MatTooltip, TooltipComponent, MatCommonModule],\n declarations: [MatTooltip, TooltipComponent],\n entryComponents: [TooltipComponent],\n providers: [MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER]\n})\nexport class MatTooltipModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {AnimationEvent} from '@angular/animations';\nimport {AriaDescriber, FocusMonitor} from '@angular/cdk/a11y';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {ESCAPE} from '@angular/cdk/keycodes';\nimport {BreakpointObserver, Breakpoints, BreakpointState} from '@angular/cdk/layout';\nimport {\n FlexibleConnectedPositionStrategy,\n HorizontalConnectionPos,\n OriginConnectionPosition,\n Overlay,\n OverlayConnectionPosition,\n OverlayRef,\n ScrollDispatcher,\n ScrollStrategy,\n VerticalConnectionPos,\n} from '@angular/cdk/overlay';\nimport {Platform} from '@angular/cdk/platform';\nimport {ComponentPortal} from '@angular/cdk/portal';\nimport {take, takeUntil} from 'rxjs/operators';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n Inject,\n InjectionToken,\n Input,\n NgZone,\n OnDestroy,\n Optional,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {Subject, Observable} from 'rxjs';\nimport {matTooltipAnimations} from './tooltip-animations';\n\n\nexport type TooltipPosition = 'left' | 'right' | 'above' | 'below' | 'before' | 'after';\n\n/** Time in ms to throttle repositioning after scroll events. */\nexport const SCROLL_THROTTLE_MS = 20;\n\n/** CSS class that will be attached to the overlay panel. */\nexport const TOOLTIP_PANEL_CLASS = 'mat-tooltip-panel';\n\n/** Creates an error to be thrown if the user supplied an invalid tooltip position. */\nexport function getMatTooltipInvalidPositionError(position: string) {\n return Error(`Tooltip position \"${position}\" is invalid.`);\n}\n\n/** Injection token that determines the scroll handling while a tooltip is visible. */\nexport const MAT_TOOLTIP_SCROLL_STRATEGY =\n new InjectionToken<() => ScrollStrategy>('mat-tooltip-scroll-strategy');\n\n/** @docs-private */\nexport function MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.reposition({scrollThrottle: SCROLL_THROTTLE_MS});\n}\n\n/** @docs-private */\nexport const MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: MAT_TOOLTIP_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY,\n};\n\n/** Default `matTooltip` options that can be overridden. */\nexport interface MatTooltipDefaultOptions {\n showDelay: number;\n hideDelay: number;\n touchendHideDelay: number;\n}\n\n/** Injection token to be used to override the default options for `matTooltip`. */\nexport const MAT_TOOLTIP_DEFAULT_OPTIONS =\n new InjectionToken<MatTooltipDefaultOptions>('mat-tooltip-default-options', {\n providedIn: 'root',\n factory: MAT_TOOLTIP_DEFAULT_OPTIONS_FACTORY\n });\n\nexport function MAT_TOOLTIP_DEFAULT_OPTIONS_FACTORY(): MatTooltipDefaultOptions {\n return {\n showDelay: 0,\n hideDelay: 0,\n touchendHideDelay: 1500,\n };\n}\n\n/**\n * Directive that attaches a material design tooltip to the host element. Animates the showing and\n * hiding of a tooltip provided position (defaults to below the element).\n *\n * https://material.google.com/components/tooltips.html\n */\n@Directive({\n selector: '[matTooltip]',\n exportAs: 'matTooltip',\n host: {\n '(longpress)': 'show()',\n '(keydown)': '_handleKeydown($event)',\n '(touchend)': '_handleTouchend()',\n },\n})\nexport class MatTooltip implements OnDestroy {\n _overlayRef: OverlayRef | null;\n _tooltipInstance: TooltipComponent | null;\n\n private _portal: ComponentPortal<TooltipComponent>;\n private _position: TooltipPosition = 'below';\n private _disabled: boolean = false;\n private _tooltipClass: string|string[]|Set<string>|{[key: string]: any};\n\n /** Allows the user to define the position of the tooltip relative to the parent element */\n @Input('matTooltipPosition')\n get position(): TooltipPosition { return this._position; }\n set position(value: TooltipPosition) {\n if (value !== this._position) {\n this._position = value;\n\n if (this._overlayRef) {\n this._updatePosition();\n\n if (this._tooltipInstance) {\n this._tooltipInstance!.show(0);\n }\n\n this._overlayRef.updatePosition();\n }\n }\n }\n\n /** Disables the display of the tooltip. */\n @Input('matTooltipDisabled')\n get disabled(): boolean { return this._disabled; }\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n\n // If tooltip is disabled, hide immediately.\n if (this._disabled) {\n this.hide(0);\n }\n }\n\n /** The default delay in ms before showing the tooltip after show is called */\n @Input('matTooltipShowDelay') showDelay = this._defaultOptions.showDelay;\n\n /** The default delay in ms before hiding the tooltip after hide is called */\n @Input('matTooltipHideDelay') hideDelay = this._defaultOptions.hideDelay;\n\n private _message = '';\n\n /** The message to be displayed in the tooltip */\n @Input('matTooltip')\n get message() { return this._message; }\n set message(value: string) {\n this._ariaDescriber.removeDescription(this._elementRef.nativeElement, this._message);\n\n // If the message is not a string (e.g. number), convert it to a string and trim it.\n this._message = value != null ? `${value}`.trim() : '';\n\n if (!this._message && this._isTooltipVisible()) {\n this.hide(0);\n } else {\n this._updateTooltipMessage();\n this._ariaDescriber.describe(this._elementRef.nativeElement, this.message);\n }\n }\n\n /** Classes to be passed to the tooltip. Supports the same syntax as `ngClass`. */\n @Input('matTooltipClass')\n get tooltipClass() { return this._tooltipClass; }\n set tooltipClass(value: string|string[]|Set<string>|{[key: string]: any}) {\n this._tooltipClass = value;\n if (this._tooltipInstance) {\n this._setTooltipClass(this._tooltipClass);\n }\n }\n\n private _manualListeners = new Map<string, Function>();\n\n /** Emits when the component is destroyed. */\n private readonly _destroyed = new Subject<void>();\n\n constructor(\n private _overlay: Overlay,\n private _elementRef: ElementRef,\n private _scrollDispatcher: ScrollDispatcher,\n private _viewContainerRef: ViewContainerRef,\n private _ngZone: NgZone,\n private _platform: Platform,\n private _ariaDescriber: AriaDescriber,\n private _focusMonitor: FocusMonitor,\n @Inject(MAT_TOOLTIP_SCROLL_STRATEGY) private _scrollStrategy,\n @Optional() private _dir: Directionality,\n @Optional() @Inject(MAT_TOOLTIP_DEFAULT_OPTIONS)\n private _defaultOptions: MatTooltipDefaultOptions) {\n\n const element: HTMLElement = _elementRef.nativeElement;\n\n // The mouse events shouldn't be bound on iOS devices, because\n // they can prevent the first tap from firing its click event.\n if (!_platform.IOS) {\n this._manualListeners.set('mouseenter', () => this.show());\n this._manualListeners.set('mouseleave', () => this.hide());\n\n this._manualListeners\n .forEach((listener, event) => _elementRef.nativeElement.addEventListener(event, listener));\n } else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n // When we bind a gesture event on an element (in this case `longpress`), HammerJS\n // will add some inline styles by default, including `user-select: none`. This is\n // problematic on iOS, because it will prevent users from typing in inputs. If\n // we're on iOS and the tooltip is attached on an input or textarea, we clear\n // the `user-select` to avoid these issues.\n element.style.webkitUserSelect = element.style.userSelect = '';\n }\n\n // Hammer applies `-webkit-user-drag: none` on all elements by default,\n // which breaks the native drag&drop. If the consumer explicitly made\n // the element draggable, clear the `-webkit-user-drag`.\n if (element.draggable && element.style['webkitUserDrag'] === 'none') {\n element.style['webkitUserDrag'] = '';\n }\n\n _focusMonitor.monitor(element).pipe(takeUntil(this._destroyed)).subscribe(origin => {\n // Note that the focus monitor runs outside the Angular zone.\n if (!origin) {\n _ngZone.run(() => this.hide(0));\n } else if (origin === 'keyboard') {\n _ngZone.run(() => this.show());\n }\n });\n }\n\n /**\n * Dispose the tooltip when destroyed.\n */\n ngOnDestroy() {\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._tooltipInstance = null;\n }\n\n // Clean up the event listeners set in the constructor\n if (!this._platform.IOS) {\n this._manualListeners.forEach((listener, event) =>\n this._elementRef.nativeElement.removeEventListener(event, listener));\n\n this._manualListeners.clear();\n }\n\n this._destroyed.next();\n this._destroyed.complete();\n\n this._ariaDescriber.removeDescription(this._elementRef.nativeElement, this.message);\n this._focusMonitor.stopMonitoring(this._elementRef.nativeElement);\n }\n\n /** Shows the tooltip after the delay in ms, defaults to tooltip-delay-show or 0ms if no input */\n show(delay: number = this.showDelay): void {\n if (this.disabled || !this.message) { return; }\n\n const overlayRef = this._createOverlay();\n\n this._detach();\n this._portal = this._portal || new ComponentPortal(TooltipComponent, this._viewContainerRef);\n this._tooltipInstance = overlayRef.attach(this._portal).instance;\n this._tooltipInstance.afterHidden()\n .pipe(takeUntil(this._destroyed))\n .subscribe(() => this._detach());\n this._setTooltipClass(this._tooltipClass);\n this._updateTooltipMessage();\n this._tooltipInstance!.show(delay);\n }\n\n /** Hides the tooltip after the delay in ms, defaults to tooltip-delay-hide or 0ms if no input */\n hide(delay: number = this.hideDelay): void {\n if (this._tooltipInstance) {\n this._tooltipInstance.hide(delay);\n }\n }\n\n /** Shows/hides the tooltip */\n toggle(): void {\n this._isTooltipVisible() ? this.hide() : this.show();\n }\n\n /** Returns true if the tooltip is currently visible to the user */\n _isTooltipVisible(): boolean {\n return !!this._tooltipInstance && this._tooltipInstance.isVisible();\n }\n\n /** Handles the keydown events on the host element. */\n _handleKeydown(e: KeyboardEvent) {\n if (this._isTooltipVisible() && e.keyCode === ESCAPE) {\n e.stopPropagation();\n this.hide(0);\n }\n }\n\n /** Handles the touchend events on the host element. */\n _handleTouchend() {\n this.hide(this._defaultOptions.touchendHideDelay);\n }\n\n /** Create the overlay config and position strategy */\n private _createOverlay(): OverlayRef {\n if (this._overlayRef) {\n return this._overlayRef;\n }\n\n // Create connected position strategy that listens for scroll events to reposition.\n const strategy = this._overlay.position()\n .flexibleConnectedTo(this._elementRef)\n .withTransformOriginOn('.mat-tooltip')\n .withFlexibleDimensions(false)\n .withViewportMargin(8);\n\n const scrollableAncestors = this._scrollDispatcher\n .getAncestorScrollContainers(this._elementRef);\n\n strategy.withScrollableContainers(scrollableAncestors);\n\n strategy.positionChanges.pipe(takeUntil(this._destroyed)).subscribe(change => {\n if (this._tooltipInstance) {\n if (change.scrollableViewProperties.isOverlayClipped && this._tooltipInstance.isVisible()) {\n // After position changes occur and the overlay is clipped by\n // a parent scrollable then close the tooltip.\n this._ngZone.run(() => this.hide(0));\n }\n }\n });\n\n this._overlayRef = this._overlay.create({\n direction: this._dir,\n positionStrategy: strategy,\n panelClass: TOOLTIP_PANEL_CLASS,\n scrollStrategy: this._scrollStrategy()\n });\n\n this._updatePosition();\n\n this._overlayRef.detachments()\n .pipe(takeUntil(this._destroyed))\n .subscribe(() => this._detach());\n\n return this._overlayRef;\n }\n\n /** Detaches the currently-attached tooltip. */\n private _detach() {\n if (this._overlayRef && this._overlayRef.hasAttached()) {\n this._overlayRef.detach();\n }\n\n this._tooltipInstance = null;\n }\n\n /** Updates the position of the current tooltip. */\n private _updatePosition() {\n const position =\n this._overlayRef!.getConfig().positionStrategy as FlexibleConnectedPositionStrategy;\n const origin = this._getOrigin();\n const overlay = this._getOverlayPosition();\n\n position.withPositions([\n {...origin.main, ...overlay.main},\n {...origin.fallback, ...overlay.fallback}\n ]);\n }\n\n /**\n * Returns the origin position and a fallback position based on the user's position preference.\n * The fallback position is the inverse of the origin (e.g. `'below' -> 'above'`).\n */\n _getOrigin(): {main: OriginConnectionPosition, fallback: OriginConnectionPosition} {\n const isLtr = !this._dir || this._dir.value == 'ltr';\n const position = this.position;\n let originPosition: OriginConnectionPosition;\n\n if (position == 'above' || position == 'below') {\n originPosition = {originX: 'center', originY: position == 'above' ? 'top' : 'bottom'};\n } else if (\n position == 'before' ||\n (position == 'left' && isLtr) ||\n (position == 'right' && !isLtr)) {\n originPosition = {originX: 'start', originY: 'center'};\n } else if (\n position == 'after' ||\n (position == 'right' && isLtr) ||\n (position == 'left' && !isLtr)) {\n originPosition = {originX: 'end', originY: 'center'};\n } else {\n throw getMatTooltipInvalidPositionError(position);\n }\n\n const {x, y} = this._invertPosition(originPosition.originX, originPosition.originY);\n\n return {\n main: originPosition,\n fallback: {originX: x, originY: y}\n };\n }\n\n /** Returns the overlay position and a fallback position based on the user's preference */\n _getOverlayPosition(): {main: OverlayConnectionPosition, fallback: OverlayConnectionPosition} {\n const isLtr = !this._dir || this._dir.value == 'ltr';\n const position = this.position;\n let overlayPosition: OverlayConnectionPosition;\n\n if (position == 'above') {\n overlayPosition = {overlayX: 'center', overlayY: 'bottom'};\n } else if (position == 'below') {\n overlayPosition = {overlayX: 'center', overlayY: 'top'};\n } else if (\n position == 'before' ||\n (position == 'left' && isLtr) ||\n (position == 'right' && !isLtr)) {\n overlayPosition = {overlayX: 'end', overlayY: 'center'};\n } else if (\n position == 'after' ||\n (position == 'right' && isLtr) ||\n (position == 'left' && !isLtr)) {\n overlayPosition = {overlayX: 'start', overlayY: 'center'};\n } else {\n throw getMatTooltipInvalidPositionError(position);\n }\n\n const {x, y} = this._invertPosition(overlayPosition.overlayX, overlayPosition.overlayY);\n\n return {\n main: overlayPosition,\n fallback: {overlayX: x, overlayY: y}\n };\n }\n\n /** Updates the tooltip message and repositions the overlay according to the new message length */\n private _updateTooltipMessage() {\n // Must wait for the message to be painted to the tooltip so that the overlay can properly\n // calculate the correct positioning based on the size of the text.\n if (this._tooltipInstance) {\n this._tooltipInstance.message = this.message;\n this._tooltipInstance._markForCheck();\n\n this._ngZone.onMicrotaskEmpty.asObservable().pipe(\n take(1),\n takeUntil(this._destroyed)\n ).subscribe(() => {\n if (this._tooltipInstance) {\n this._overlayRef!.updatePosition();\n }\n });\n }\n }\n\n /** Updates the tooltip class */\n private _setTooltipClass(tooltipClass: string|string[]|Set<string>|{[key: string]: any}) {\n if (this._tooltipInstance) {\n this._tooltipInstance.tooltipClass = tooltipClass;\n this._tooltipInstance._markForCheck();\n }\n }\n\n /** Inverts an overlay position. */\n private _invertPosition(x: HorizontalConnectionPos, y: VerticalConnectionPos) {\n if (this.position === 'above' || this.position === 'below') {\n if (y === 'top') {\n y = 'bottom';\n } else if (y === 'bottom') {\n y = 'top';\n }\n } else {\n if (x === 'end') {\n x = 'start';\n } else if (x === 'start') {\n x = 'end';\n }\n }\n\n return {x, y};\n }\n}\n\nexport type TooltipVisibility = 'initial' | 'visible' | 'hidden';\n\n/**\n * Internal component that wraps the tooltip's content.\n * @docs-private\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-tooltip-component',\n templateUrl: 'tooltip.html',\n styleUrls: ['tooltip.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [matTooltipAnimations.tooltipState],\n host: {\n // Forces the element to have a layout in IE and Edge. This fixes issues where the element\n // won't be rendered if the animations are disabled or there is no web animations polyfill.\n '[style.zoom]': '_visibility === \"visible\" ? 1 : null',\n '(body:click)': 'this._handleBodyInteraction()',\n 'aria-hidden': 'true',\n }\n})\nexport class TooltipComponent {\n /** Message to display in the tooltip */\n message: string;\n\n /** Classes to be added to the tooltip. Supports the same syntax as `ngClass`. */\n tooltipClass: string|string[]|Set<string>|{[key: string]: any};\n\n /** The timeout ID of any current timer set to show the tooltip */\n _showTimeoutId: number;\n\n /** The timeout ID of any current timer set to hide the tooltip */\n _hideTimeoutId: number;\n\n /** Property watched by the animation framework to show or hide the tooltip */\n _visibility: TooltipVisibility = 'initial';\n\n /** Whether interactions on the page should close the tooltip */\n private _closeOnInteraction: boolean = false;\n\n /** Subject for notifying that the tooltip has been hidden from the view */\n private readonly _onHide: Subject<any> = new Subject();\n\n /** Stream that emits whether the user has a handset-sized display. */\n _isHandset: Observable<BreakpointState> = this._breakpointObserver.observe(Breakpoints.Handset);\n\n constructor(\n private _changeDetectorRef: ChangeDetectorRef,\n private _breakpointObserver: BreakpointObserver) {}\n\n /**\n * Shows the tooltip with an animation originating from the provided origin\n * @param delay Amount of milliseconds to the delay showing the tooltip.\n */\n show(delay: number): void {\n // Cancel the delayed hide if it is scheduled\n if (this._hideTimeoutId) {\n clearTimeout(this._hideTimeoutId);\n }\n\n // Body interactions should cancel the tooltip if there is a delay in showing.\n this._closeOnInteraction = true;\n this._showTimeoutId = setTimeout(() => {\n this._visibility = 'visible';\n\n // Mark for check so if any parent component has set the\n // ChangeDetectionStrategy to OnPush it will be checked anyways\n this._markForCheck();\n }, delay);\n }\n\n /**\n * Begins the animation to hide the tooltip after the provided delay in ms.\n * @param delay Amount of milliseconds to delay showing the tooltip.\n */\n hide(delay: number): void {\n // Cancel the delayed show if it is scheduled\n if (this._showTimeoutId) {\n clearTimeout(this._showTimeoutId);\n }\n\n this._hideTimeoutId = setTimeout(() => {\n this._visibility = 'hidden';\n\n // Mark for check so if any parent component has set the\n // ChangeDetectionStrategy to OnPush it will be checked anyways\n this._markForCheck();\n }, delay);\n }\n\n /** Returns an observable that notifies when the tooltip has been hidden from view. */\n afterHidden(): Observable<void> {\n return this._onHide.asObservable();\n }\n\n /** Whether the tooltip is being displayed. */\n isVisible(): boolean {\n return this._visibility === 'visible';\n }\n\n _animationStart() {\n this._closeOnInteraction = false;\n }\n\n _animationDone(event: AnimationEvent): void {\n const toState = event.toState as TooltipVisibility;\n\n if (toState === 'hidden' && !this.isVisible()) {\n this._onHide.next();\n }\n\n if (toState === 'visible' || toState === 'hidden') {\n this._closeOnInteraction = true;\n }\n }\n\n /**\n * Interactions on the HTML body should close the tooltip immediately as defined in the\n * material design spec.\n * https://material.google.com/components/tooltips.html#tooltips-interaction\n */\n _handleBodyInteraction(): void {\n if (this._closeOnInteraction) {\n this.hide(0);\n }\n }\n\n /**\n * Marks that the tooltip needs to be checked in the next change detection run.\n * Mainly used for rendering the initial text before positioning a tooltip, which\n * can be problematic in components with OnPush change detection.\n */\n _markForCheck(): void {\n this._changeDetectorRef.markForCheck();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\n/** Animations used by MatTooltip. */\nexport const matTooltipAnimations: {\n readonly tooltipState: AnimationTriggerMetadata;\n} = {\n /** Animation that transitions a tooltip in and out. */\n tooltipState: trigger('state', [\n state('initial, void, hidden', style({transform: 'scale(0)'})),\n state('visible', style({transform: 'scale(1)'})),\n transition('* => visible', animate('150ms cubic-bezier(0.0, 0.0, 0.2, 1)')),\n transition('* => hidden', animate('150ms cubic-bezier(0.4, 0.0, 1, 1)')),\n ])\n};\n"],"names":["tslib_1.__assign"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tooltip.es5.js","sources":["../../../src/lib/tooltip/tooltip-module.ts","../../../src/lib/tooltip/tooltip.ts","../../../src/lib/tooltip/tooltip-animations.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {OverlayModule} from '@angular/cdk/overlay';\nimport {A11yModule} from '@angular/cdk/a11y';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {\n MatTooltip,\n TooltipComponent,\n MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER,\n} from './tooltip';\n\n@NgModule({\n imports: [\n A11yModule,\n CommonModule,\n OverlayModule,\n MatCommonModule,\n ],\n exports: [MatTooltip, TooltipComponent, MatCommonModule],\n declarations: [MatTooltip, TooltipComponent],\n entryComponents: [TooltipComponent],\n providers: [MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER]\n})\nexport class MatTooltipModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {AnimationEvent} from '@angular/animations';\nimport {AriaDescriber, FocusMonitor} from '@angular/cdk/a11y';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {ESCAPE} from '@angular/cdk/keycodes';\nimport {BreakpointObserver, Breakpoints, BreakpointState} from '@angular/cdk/layout';\nimport {\n FlexibleConnectedPositionStrategy,\n HorizontalConnectionPos,\n OriginConnectionPosition,\n Overlay,\n OverlayConnectionPosition,\n OverlayRef,\n ScrollDispatcher,\n ScrollStrategy,\n VerticalConnectionPos,\n} from '@angular/cdk/overlay';\nimport {Platform} from '@angular/cdk/platform';\nimport {ComponentPortal} from '@angular/cdk/portal';\nimport {take, takeUntil} from 'rxjs/operators';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n Inject,\n InjectionToken,\n Input,\n NgZone,\n OnDestroy,\n Optional,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {Subject, Observable} from 'rxjs';\nimport {matTooltipAnimations} from './tooltip-animations';\n\n\nexport type TooltipPosition = 'left' | 'right' | 'above' | 'below' | 'before' | 'after';\n\n/** Time in ms to throttle repositioning after scroll events. */\nexport const SCROLL_THROTTLE_MS = 20;\n\n/** CSS class that will be attached to the overlay panel. */\nexport const TOOLTIP_PANEL_CLASS = 'mat-tooltip-panel';\n\n/** Creates an error to be thrown if the user supplied an invalid tooltip position. */\nexport function getMatTooltipInvalidPositionError(position: string) {\n return Error(`Tooltip position \"${position}\" is invalid.`);\n}\n\n/** Injection token that determines the scroll handling while a tooltip is visible. */\nexport const MAT_TOOLTIP_SCROLL_STRATEGY =\n new InjectionToken<() => ScrollStrategy>('mat-tooltip-scroll-strategy');\n\n/** @docs-private */\nexport function MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.reposition({scrollThrottle: SCROLL_THROTTLE_MS});\n}\n\n/** @docs-private */\nexport const MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: MAT_TOOLTIP_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: MAT_TOOLTIP_SCROLL_STRATEGY_FACTORY,\n};\n\n/** Default `matTooltip` options that can be overridden. */\nexport interface MatTooltipDefaultOptions {\n showDelay: number;\n hideDelay: number;\n touchendHideDelay: number;\n}\n\n/** Injection token to be used to override the default options for `matTooltip`. */\nexport const MAT_TOOLTIP_DEFAULT_OPTIONS =\n new InjectionToken<MatTooltipDefaultOptions>('mat-tooltip-default-options', {\n providedIn: 'root',\n factory: MAT_TOOLTIP_DEFAULT_OPTIONS_FACTORY\n });\n\nexport function MAT_TOOLTIP_DEFAULT_OPTIONS_FACTORY(): MatTooltipDefaultOptions {\n return {\n showDelay: 0,\n hideDelay: 0,\n touchendHideDelay: 1500,\n };\n}\n\n/**\n * Directive that attaches a material design tooltip to the host element. Animates the showing and\n * hiding of a tooltip provided position (defaults to below the element).\n *\n * https://material.io/design/components/tooltips.html\n */\n@Directive({\n selector: '[matTooltip]',\n exportAs: 'matTooltip',\n host: {\n '(longpress)': 'show()',\n '(keydown)': '_handleKeydown($event)',\n '(touchend)': '_handleTouchend()',\n },\n})\nexport class MatTooltip implements OnDestroy {\n _overlayRef: OverlayRef | null;\n _tooltipInstance: TooltipComponent | null;\n\n private _portal: ComponentPortal<TooltipComponent>;\n private _position: TooltipPosition = 'below';\n private _disabled: boolean = false;\n private _tooltipClass: string|string[]|Set<string>|{[key: string]: any};\n\n /** Allows the user to define the position of the tooltip relative to the parent element */\n @Input('matTooltipPosition')\n get position(): TooltipPosition { return this._position; }\n set position(value: TooltipPosition) {\n if (value !== this._position) {\n this._position = value;\n\n if (this._overlayRef) {\n this._updatePosition();\n\n if (this._tooltipInstance) {\n this._tooltipInstance!.show(0);\n }\n\n this._overlayRef.updatePosition();\n }\n }\n }\n\n /** Disables the display of the tooltip. */\n @Input('matTooltipDisabled')\n get disabled(): boolean { return this._disabled; }\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n\n // If tooltip is disabled, hide immediately.\n if (this._disabled) {\n this.hide(0);\n }\n }\n\n /** The default delay in ms before showing the tooltip after show is called */\n @Input('matTooltipShowDelay') showDelay = this._defaultOptions.showDelay;\n\n /** The default delay in ms before hiding the tooltip after hide is called */\n @Input('matTooltipHideDelay') hideDelay = this._defaultOptions.hideDelay;\n\n private _message = '';\n\n /** The message to be displayed in the tooltip */\n @Input('matTooltip')\n get message() { return this._message; }\n set message(value: string) {\n this._ariaDescriber.removeDescription(this._elementRef.nativeElement, this._message);\n\n // If the message is not a string (e.g. number), convert it to a string and trim it.\n this._message = value != null ? `${value}`.trim() : '';\n\n if (!this._message && this._isTooltipVisible()) {\n this.hide(0);\n } else {\n this._updateTooltipMessage();\n this._ariaDescriber.describe(this._elementRef.nativeElement, this.message);\n }\n }\n\n /** Classes to be passed to the tooltip. Supports the same syntax as `ngClass`. */\n @Input('matTooltipClass')\n get tooltipClass() { return this._tooltipClass; }\n set tooltipClass(value: string|string[]|Set<string>|{[key: string]: any}) {\n this._tooltipClass = value;\n if (this._tooltipInstance) {\n this._setTooltipClass(this._tooltipClass);\n }\n }\n\n private _manualListeners = new Map<string, EventListenerOrEventListenerObject>();\n\n /** Emits when the component is destroyed. */\n private readonly _destroyed = new Subject<void>();\n\n constructor(\n private _overlay: Overlay,\n private _elementRef: ElementRef<HTMLElement>,\n private _scrollDispatcher: ScrollDispatcher,\n private _viewContainerRef: ViewContainerRef,\n private _ngZone: NgZone,\n private _platform: Platform,\n private _ariaDescriber: AriaDescriber,\n private _focusMonitor: FocusMonitor,\n @Inject(MAT_TOOLTIP_SCROLL_STRATEGY) private _scrollStrategy,\n @Optional() private _dir: Directionality,\n @Optional() @Inject(MAT_TOOLTIP_DEFAULT_OPTIONS)\n private _defaultOptions: MatTooltipDefaultOptions) {\n\n const element: HTMLElement = _elementRef.nativeElement;\n\n // The mouse events shouldn't be bound on mobile devices, because they can prevent the\n // first tap from firing its click event or can cause the tooltip to open for clicks.\n if (!_platform.IOS && !_platform.ANDROID) {\n this._manualListeners\n .set('mouseenter', () => this.show())\n .set('mouseleave', () => this.hide())\n .forEach((listener, event) => element.addEventListener(event, listener));\n } else if (_platform.IOS && (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA')) {\n // When we bind a gesture event on an element (in this case `longpress`), HammerJS\n // will add some inline styles by default, including `user-select: none`. This is\n // problematic on iOS, because it will prevent users from typing in inputs. If\n // we're on iOS and the tooltip is attached on an input or textarea, we clear\n // the `user-select` to avoid these issues.\n element.style.webkitUserSelect = element.style.userSelect = '';\n }\n\n // Hammer applies `-webkit-user-drag: none` on all elements by default,\n // which breaks the native drag&drop. If the consumer explicitly made\n // the element draggable, clear the `-webkit-user-drag`.\n if (element.draggable && element.style['webkitUserDrag'] === 'none') {\n element.style['webkitUserDrag'] = '';\n }\n\n _focusMonitor.monitor(element).pipe(takeUntil(this._destroyed)).subscribe(origin => {\n // Note that the focus monitor runs outside the Angular zone.\n if (!origin) {\n _ngZone.run(() => this.hide(0));\n } else if (origin === 'keyboard') {\n _ngZone.run(() => this.show());\n }\n });\n }\n\n /**\n * Dispose the tooltip when destroyed.\n */\n ngOnDestroy() {\n if (this._overlayRef) {\n this._overlayRef.dispose();\n this._tooltipInstance = null;\n }\n\n // Clean up the event listeners set in the constructor\n if (!this._platform.IOS) {\n this._manualListeners.forEach((listener, event) =>\n this._elementRef.nativeElement.removeEventListener(event, listener));\n\n this._manualListeners.clear();\n }\n\n this._destroyed.next();\n this._destroyed.complete();\n\n this._ariaDescriber.removeDescription(this._elementRef.nativeElement, this.message);\n this._focusMonitor.stopMonitoring(this._elementRef.nativeElement);\n }\n\n /** Shows the tooltip after the delay in ms, defaults to tooltip-delay-show or 0ms if no input */\n show(delay: number = this.showDelay): void {\n if (this.disabled || !this.message) { return; }\n\n const overlayRef = this._createOverlay();\n\n this._detach();\n this._portal = this._portal || new ComponentPortal(TooltipComponent, this._viewContainerRef);\n this._tooltipInstance = overlayRef.attach(this._portal).instance;\n this._tooltipInstance.afterHidden()\n .pipe(takeUntil(this._destroyed))\n .subscribe(() => this._detach());\n this._setTooltipClass(this._tooltipClass);\n this._updateTooltipMessage();\n this._tooltipInstance!.show(delay);\n }\n\n /** Hides the tooltip after the delay in ms, defaults to tooltip-delay-hide or 0ms if no input */\n hide(delay: number = this.hideDelay): void {\n if (this._tooltipInstance) {\n this._tooltipInstance.hide(delay);\n }\n }\n\n /** Shows/hides the tooltip */\n toggle(): void {\n this._isTooltipVisible() ? this.hide() : this.show();\n }\n\n /** Returns true if the tooltip is currently visible to the user */\n _isTooltipVisible(): boolean {\n return !!this._tooltipInstance && this._tooltipInstance.isVisible();\n }\n\n /** Handles the keydown events on the host element. */\n _handleKeydown(e: KeyboardEvent) {\n if (this._isTooltipVisible() && e.keyCode === ESCAPE) {\n e.stopPropagation();\n this.hide(0);\n }\n }\n\n /** Handles the touchend events on the host element. */\n _handleTouchend() {\n this.hide(this._defaultOptions.touchendHideDelay);\n }\n\n /** Create the overlay config and position strategy */\n private _createOverlay(): OverlayRef {\n if (this._overlayRef) {\n return this._overlayRef;\n }\n\n // Create connected position strategy that listens for scroll events to reposition.\n const strategy = this._overlay.position()\n .flexibleConnectedTo(this._elementRef)\n .withTransformOriginOn('.mat-tooltip')\n .withFlexibleDimensions(false)\n .withViewportMargin(8);\n\n const scrollableAncestors = this._scrollDispatcher\n .getAncestorScrollContainers(this._elementRef);\n\n strategy.withScrollableContainers(scrollableAncestors);\n\n strategy.positionChanges.pipe(takeUntil(this._destroyed)).subscribe(change => {\n if (this._tooltipInstance) {\n if (change.scrollableViewProperties.isOverlayClipped && this._tooltipInstance.isVisible()) {\n // After position changes occur and the overlay is clipped by\n // a parent scrollable then close the tooltip.\n this._ngZone.run(() => this.hide(0));\n }\n }\n });\n\n this._overlayRef = this._overlay.create({\n direction: this._dir,\n positionStrategy: strategy,\n panelClass: TOOLTIP_PANEL_CLASS,\n scrollStrategy: this._scrollStrategy()\n });\n\n this._updatePosition();\n\n this._overlayRef.detachments()\n .pipe(takeUntil(this._destroyed))\n .subscribe(() => this._detach());\n\n return this._overlayRef;\n }\n\n /** Detaches the currently-attached tooltip. */\n private _detach() {\n if (this._overlayRef && this._overlayRef.hasAttached()) {\n this._overlayRef.detach();\n }\n\n this._tooltipInstance = null;\n }\n\n /** Updates the position of the current tooltip. */\n private _updatePosition() {\n const position =\n this._overlayRef!.getConfig().positionStrategy as FlexibleConnectedPositionStrategy;\n const origin = this._getOrigin();\n const overlay = this._getOverlayPosition();\n\n position.withPositions([\n {...origin.main, ...overlay.main},\n {...origin.fallback, ...overlay.fallback}\n ]);\n }\n\n /**\n * Returns the origin position and a fallback position based on the user's position preference.\n * The fallback position is the inverse of the origin (e.g. `'below' -> 'above'`).\n */\n _getOrigin(): {main: OriginConnectionPosition, fallback: OriginConnectionPosition} {\n const isLtr = !this._dir || this._dir.value == 'ltr';\n const position = this.position;\n let originPosition: OriginConnectionPosition;\n\n if (position == 'above' || position == 'below') {\n originPosition = {originX: 'center', originY: position == 'above' ? 'top' : 'bottom'};\n } else if (\n position == 'before' ||\n (position == 'left' && isLtr) ||\n (position == 'right' && !isLtr)) {\n originPosition = {originX: 'start', originY: 'center'};\n } else if (\n position == 'after' ||\n (position == 'right' && isLtr) ||\n (position == 'left' && !isLtr)) {\n originPosition = {originX: 'end', originY: 'center'};\n } else {\n throw getMatTooltipInvalidPositionError(position);\n }\n\n const {x, y} = this._invertPosition(originPosition.originX, originPosition.originY);\n\n return {\n main: originPosition,\n fallback: {originX: x, originY: y}\n };\n }\n\n /** Returns the overlay position and a fallback position based on the user's preference */\n _getOverlayPosition(): {main: OverlayConnectionPosition, fallback: OverlayConnectionPosition} {\n const isLtr = !this._dir || this._dir.value == 'ltr';\n const position = this.position;\n let overlayPosition: OverlayConnectionPosition;\n\n if (position == 'above') {\n overlayPosition = {overlayX: 'center', overlayY: 'bottom'};\n } else if (position == 'below') {\n overlayPosition = {overlayX: 'center', overlayY: 'top'};\n } else if (\n position == 'before' ||\n (position == 'left' && isLtr) ||\n (position == 'right' && !isLtr)) {\n overlayPosition = {overlayX: 'end', overlayY: 'center'};\n } else if (\n position == 'after' ||\n (position == 'right' && isLtr) ||\n (position == 'left' && !isLtr)) {\n overlayPosition = {overlayX: 'start', overlayY: 'center'};\n } else {\n throw getMatTooltipInvalidPositionError(position);\n }\n\n const {x, y} = this._invertPosition(overlayPosition.overlayX, overlayPosition.overlayY);\n\n return {\n main: overlayPosition,\n fallback: {overlayX: x, overlayY: y}\n };\n }\n\n /** Updates the tooltip message and repositions the overlay according to the new message length */\n private _updateTooltipMessage() {\n // Must wait for the message to be painted to the tooltip so that the overlay can properly\n // calculate the correct positioning based on the size of the text.\n if (this._tooltipInstance) {\n this._tooltipInstance.message = this.message;\n this._tooltipInstance._markForCheck();\n\n this._ngZone.onMicrotaskEmpty.asObservable().pipe(\n take(1),\n takeUntil(this._destroyed)\n ).subscribe(() => {\n if (this._tooltipInstance) {\n this._overlayRef!.updatePosition();\n }\n });\n }\n }\n\n /** Updates the tooltip class */\n private _setTooltipClass(tooltipClass: string|string[]|Set<string>|{[key: string]: any}) {\n if (this._tooltipInstance) {\n this._tooltipInstance.tooltipClass = tooltipClass;\n this._tooltipInstance._markForCheck();\n }\n }\n\n /** Inverts an overlay position. */\n private _invertPosition(x: HorizontalConnectionPos, y: VerticalConnectionPos) {\n if (this.position === 'above' || this.position === 'below') {\n if (y === 'top') {\n y = 'bottom';\n } else if (y === 'bottom') {\n y = 'top';\n }\n } else {\n if (x === 'end') {\n x = 'start';\n } else if (x === 'start') {\n x = 'end';\n }\n }\n\n return {x, y};\n }\n}\n\nexport type TooltipVisibility = 'initial' | 'visible' | 'hidden';\n\n/**\n * Internal component that wraps the tooltip's content.\n * @docs-private\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-tooltip-component',\n templateUrl: 'tooltip.html',\n styleUrls: ['tooltip.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [matTooltipAnimations.tooltipState],\n host: {\n // Forces the element to have a layout in IE and Edge. This fixes issues where the element\n // won't be rendered if the animations are disabled or there is no web animations polyfill.\n '[style.zoom]': '_visibility === \"visible\" ? 1 : null',\n '(body:click)': 'this._handleBodyInteraction()',\n 'aria-hidden': 'true',\n }\n})\nexport class TooltipComponent {\n /** Message to display in the tooltip */\n message: string;\n\n /** Classes to be added to the tooltip. Supports the same syntax as `ngClass`. */\n tooltipClass: string|string[]|Set<string>|{[key: string]: any};\n\n /** The timeout ID of any current timer set to show the tooltip */\n _showTimeoutId: number;\n\n /** The timeout ID of any current timer set to hide the tooltip */\n _hideTimeoutId: number;\n\n /** Property watched by the animation framework to show or hide the tooltip */\n _visibility: TooltipVisibility = 'initial';\n\n /** Whether interactions on the page should close the tooltip */\n private _closeOnInteraction: boolean = false;\n\n /** Subject for notifying that the tooltip has been hidden from the view */\n private readonly _onHide: Subject<any> = new Subject();\n\n /** Stream that emits whether the user has a handset-sized display. */\n _isHandset: Observable<BreakpointState> = this._breakpointObserver.observe(Breakpoints.Handset);\n\n constructor(\n private _changeDetectorRef: ChangeDetectorRef,\n private _breakpointObserver: BreakpointObserver) {}\n\n /**\n * Shows the tooltip with an animation originating from the provided origin\n * @param delay Amount of milliseconds to the delay showing the tooltip.\n */\n show(delay: number): void {\n // Cancel the delayed hide if it is scheduled\n if (this._hideTimeoutId) {\n clearTimeout(this._hideTimeoutId);\n }\n\n // Body interactions should cancel the tooltip if there is a delay in showing.\n this._closeOnInteraction = true;\n this._showTimeoutId = setTimeout(() => {\n this._visibility = 'visible';\n\n // Mark for check so if any parent component has set the\n // ChangeDetectionStrategy to OnPush it will be checked anyways\n this._markForCheck();\n }, delay);\n }\n\n /**\n * Begins the animation to hide the tooltip after the provided delay in ms.\n * @param delay Amount of milliseconds to delay showing the tooltip.\n */\n hide(delay: number): void {\n // Cancel the delayed show if it is scheduled\n if (this._showTimeoutId) {\n clearTimeout(this._showTimeoutId);\n }\n\n this._hideTimeoutId = setTimeout(() => {\n this._visibility = 'hidden';\n\n // Mark for check so if any parent component has set the\n // ChangeDetectionStrategy to OnPush it will be checked anyways\n this._markForCheck();\n }, delay);\n }\n\n /** Returns an observable that notifies when the tooltip has been hidden from view. */\n afterHidden(): Observable<void> {\n return this._onHide.asObservable();\n }\n\n /** Whether the tooltip is being displayed. */\n isVisible(): boolean {\n return this._visibility === 'visible';\n }\n\n _animationStart() {\n this._closeOnInteraction = false;\n }\n\n _animationDone(event: AnimationEvent): void {\n const toState = event.toState as TooltipVisibility;\n\n if (toState === 'hidden' && !this.isVisible()) {\n this._onHide.next();\n }\n\n if (toState === 'visible' || toState === 'hidden') {\n this._closeOnInteraction = true;\n }\n }\n\n /**\n * Interactions on the HTML body should close the tooltip immediately as defined in the\n * material design spec.\n * https://material.io/design/components/tooltips.html#behavior\n */\n _handleBodyInteraction(): void {\n if (this._closeOnInteraction) {\n this.hide(0);\n }\n }\n\n /**\n * Marks that the tooltip needs to be checked in the next change detection run.\n * Mainly used for rendering the initial text before positioning a tooltip, which\n * can be problematic in components with OnPush change detection.\n */\n _markForCheck(): void {\n this._changeDetectorRef.markForCheck();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\n/** Animations used by MatTooltip. */\nexport const matTooltipAnimations: {\n readonly tooltipState: AnimationTriggerMetadata;\n} = {\n /** Animation that transitions a tooltip in and out. */\n tooltipState: trigger('state', [\n state('initial, void, hidden', style({transform: 'scale(0)'})),\n state('visible', style({transform: 'scale(1)'})),\n transition('* => visible', animate('150ms cubic-bezier(0.0, 0.0, 0.2, 1)')),\n transition('* => hidden', animate('150ms cubic-bezier(0.4, 0.0, 1, 1)')),\n ])\n};\n"],"names":["tslib_1.__assign"],"mappings":"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"}
|
package/esm5/tree.es5.js
CHANGED
|
@@ -42,6 +42,8 @@ var MatTreeNodeOutlet = /** @class */ (function () {
|
|
|
42
42
|
* @fileoverview added by tsickle
|
|
43
43
|
* @suppress {checkTypes} checked by tsc
|
|
44
44
|
*/
|
|
45
|
+
// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760
|
|
46
|
+
var /** @type {?} */ _CdkTreeNodeDef = CdkTreeNodeDef;
|
|
45
47
|
var /** @type {?} */ _MatTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkTreeNode));
|
|
46
48
|
var /** @type {?} */ _MatNestedTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkNestedTreeNode));
|
|
47
49
|
/**
|
|
@@ -106,7 +108,7 @@ var MatTreeNodeDef = /** @class */ (function (_super) {
|
|
|
106
108
|
"data": [{ type: Input, args: ['matTreeNode',] },],
|
|
107
109
|
};
|
|
108
110
|
return MatTreeNodeDef;
|
|
109
|
-
}(
|
|
111
|
+
}(_CdkTreeNodeDef));
|
|
110
112
|
/**
|
|
111
113
|
* Wrapper for the CdkTree nested node with Material design styles.
|
|
112
114
|
* @template T
|
|
@@ -176,6 +178,8 @@ var MatNestedTreeNode = /** @class */ (function (_super) {
|
|
|
176
178
|
* @fileoverview added by tsickle
|
|
177
179
|
* @suppress {checkTypes} checked by tsc
|
|
178
180
|
*/
|
|
181
|
+
// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760
|
|
182
|
+
var /** @type {?} */ _CdkTreeNodePadding = CdkTreeNodePadding;
|
|
179
183
|
/**
|
|
180
184
|
* Wrapper for the CdkTree padding with Material design styles.
|
|
181
185
|
* @template T
|
|
@@ -197,12 +201,14 @@ var MatTreeNodePadding = /** @class */ (function (_super) {
|
|
|
197
201
|
"indent": [{ type: Input, args: ['matTreeNodePaddingIndent',] },],
|
|
198
202
|
};
|
|
199
203
|
return MatTreeNodePadding;
|
|
200
|
-
}(
|
|
204
|
+
}(_CdkTreeNodePadding));
|
|
201
205
|
|
|
202
206
|
/**
|
|
203
207
|
* @fileoverview added by tsickle
|
|
204
208
|
* @suppress {checkTypes} checked by tsc
|
|
205
209
|
*/
|
|
210
|
+
// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760
|
|
211
|
+
var /** @type {?} */ _CdkTree = CdkTree;
|
|
206
212
|
/**
|
|
207
213
|
* Wrapper for the CdkTable with Material design styles.
|
|
208
214
|
* @template T
|
|
@@ -231,12 +237,14 @@ var MatTree = /** @class */ (function (_super) {
|
|
|
231
237
|
"_nodeOutlet": [{ type: ViewChild, args: [MatTreeNodeOutlet,] },],
|
|
232
238
|
};
|
|
233
239
|
return MatTree;
|
|
234
|
-
}(
|
|
240
|
+
}(_CdkTree));
|
|
235
241
|
|
|
236
242
|
/**
|
|
237
243
|
* @fileoverview added by tsickle
|
|
238
244
|
* @suppress {checkTypes} checked by tsc
|
|
239
245
|
*/
|
|
246
|
+
// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760
|
|
247
|
+
var /** @type {?} */ _CdkTreeNodeToggle = CdkTreeNodeToggle;
|
|
240
248
|
/**
|
|
241
249
|
* Wrapper for the CdkTree's toggle with Material design styles.
|
|
242
250
|
* @template T
|
|
@@ -262,7 +270,7 @@ var MatTreeNodeToggle = /** @class */ (function (_super) {
|
|
|
262
270
|
"recursive": [{ type: Input, args: ['matTreeNodeToggleRecursive',] },],
|
|
263
271
|
};
|
|
264
272
|
return MatTreeNodeToggle;
|
|
265
|
-
}(
|
|
273
|
+
}(_CdkTreeNodeToggle));
|
|
266
274
|
|
|
267
275
|
/**
|
|
268
276
|
* @fileoverview added by tsickle
|
|
@@ -643,5 +651,5 @@ MatTreeNestedDataSource = /** @class */ (function (_super) {
|
|
|
643
651
|
* @suppress {checkTypes} checked by tsc
|
|
644
652
|
*/
|
|
645
653
|
|
|
646
|
-
export { _MatTreeNodeMixinBase, _MatNestedTreeNodeMixinBase, MatTreeNode, MatTreeNodeDef, MatNestedTreeNode, MatTreeNodePadding, MatTree, MatTreeModule, MatTreeNodeToggle, MatTreeNodeOutlet, MatTreeFlattener, MatTreeFlatDataSource, MatTreeNestedDataSource };
|
|
654
|
+
export { _CdkTreeNodeDef, _MatTreeNodeMixinBase, _MatNestedTreeNodeMixinBase, MatTreeNode, MatTreeNodeDef, MatNestedTreeNode, _CdkTreeNodePadding, MatTreeNodePadding, _CdkTree, MatTree, MatTreeModule, _CdkTreeNodeToggle, MatTreeNodeToggle, MatTreeNodeOutlet, MatTreeFlattener, MatTreeFlatDataSource, MatTreeNestedDataSource };
|
|
647
655
|
//# sourceMappingURL=tree.es5.js.map
|
package/esm5/tree.es5.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.es5.js","sources":["../../../src/lib/tree/data-source/nested-data-source.ts","../../../src/lib/tree/data-source/flat-data-source.ts","../../../src/lib/tree/tree-module.ts","../../../src/lib/tree/toggle.ts","../../../src/lib/tree/tree.ts","../../../src/lib/tree/padding.ts","../../../src/lib/tree/node.ts","../../../src/lib/tree/outlet.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n\n/**\n * Data source for nested tree.\n *\n * The data source for nested tree doesn't have to consider node flattener, or the way to expand\n * or collapse. The expansion/collapsion will be handled by TreeControl and each non-leaf node.\n */\nexport class MatTreeNestedDataSource<T> extends DataSource<T> {\n _data = new BehaviorSubject<T[]>([]);\n\n /**\n * Data for the nested tree\n */\n get data() { return this._data.value; }\n set data(value: T[]) { this._data.next(value); }\n\n connect(collectionViewer: CollectionViewer): Observable<T[]> {\n return merge(...[collectionViewer.viewChange, this._data])\n .pipe(map(() => {\n return this.data;\n }));\n }\n\n disconnect() {\n // no op\n }\n}\n\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {FlatTreeControl, TreeControl} from '@angular/cdk/tree';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map, take} from 'rxjs/operators';\n\n/**\n * Tree flattener to convert a normal type of node to node with children & level information.\n * Transform nested nodes of type `T` to flattened nodes of type `F`.\n *\n * For example, the input data of type `T` is nested, and contains its children data:\n * SomeNode: {\n * key: 'Fruits',\n * children: [\n * NodeOne: {\n * key: 'Apple',\n * },\n * NodeTwo: {\n * key: 'Pear',\n * }\n * ]\n * }\n * After flattener flatten the tree, the structure will become\n * SomeNode: {\n * key: 'Fruits',\n * expandable: true,\n * level: 1\n * },\n * NodeOne: {\n * key: 'Apple',\n * expandable: false,\n * level: 2\n * },\n * NodeTwo: {\n * key: 'Pear',\n * expandable: false,\n * level: 2\n * }\n * and the output flattened type is `F` with additional information.\n */\nexport class MatTreeFlattener<T, F> {\n\n constructor(public transformFunction: (node: T, level: number) => F,\n public getLevel: (node: F) => number,\n public isExpandable: (node: F) => boolean,\n public getChildren: (node: T) => Observable<T[]> | T[]) {}\n\n _flattenNode(node: T, level: number,\n resultNodes: F[], parentMap: boolean[]): F[] {\n const flatNode = this.transformFunction(node, level);\n resultNodes.push(flatNode);\n\n if (this.isExpandable(flatNode)) {\n const childrenNodes = this.getChildren(node);\n if (Array.isArray(childrenNodes)) {\n this._flattenChildren(childrenNodes, level, resultNodes, parentMap);\n } else {\n childrenNodes.pipe(take(1)).subscribe(children => {\n this._flattenChildren(children, level, resultNodes, parentMap);\n });\n }\n }\n return resultNodes;\n }\n\n _flattenChildren(children: T[], level: number,\n resultNodes: F[], parentMap: boolean[]): void {\n children.forEach((child, index) => {\n let childParentMap: boolean[] = parentMap.slice();\n childParentMap.push(index != children.length - 1);\n this._flattenNode(child, level + 1, resultNodes, childParentMap);\n });\n }\n\n /**\n * Flatten a list of node type T to flattened version of node F.\n * Please note that type T may be nested, and the length of `structuredData` may be different\n * from that of returned list `F[]`.\n */\n flattenNodes(structuredData: T[]): F[] {\n let resultNodes: F[] = [];\n structuredData.forEach(node => this._flattenNode(node, 0, resultNodes, []));\n return resultNodes;\n }\n\n /**\n * Expand flattened node with current expansion status.\n * The returned list may have different length.\n */\n expandFlattenedNodes(nodes: F[], treeControl: TreeControl<F>): F[] {\n let results: F[] = [];\n let currentExpand: boolean[] = [];\n currentExpand[0] = true;\n\n nodes.forEach(node => {\n let expand = true;\n for (let i = 0; i <= this.getLevel(node); i++) {\n expand = expand && currentExpand[i];\n }\n if (expand) {\n results.push(node);\n }\n if (this.isExpandable(node)) {\n currentExpand[this.getLevel(node) + 1] = treeControl.isExpanded(node);\n }\n });\n return results;\n }\n}\n\n\n/**\n * Data source for flat tree.\n * The data source need to handle expansion/collapsion of the tree node and change the data feed\n * to `MatTree`.\n * The nested tree nodes of type `T` are flattened through `MatTreeFlattener`, and converted\n * to type `F` for `MatTree` to consume.\n */\nexport class MatTreeFlatDataSource<T, F> extends DataSource<F> {\n _flattenedData = new BehaviorSubject<F[]>([]);\n\n _expandedData = new BehaviorSubject<F[]>([]);\n\n _data: BehaviorSubject<T[]>;\n get data() { return this._data.value; }\n set data(value: T[]) {\n this._data.next(value);\n this._flattenedData.next(this.treeFlattener.flattenNodes(this.data));\n this.treeControl.dataNodes = this._flattenedData.value;\n }\n\n constructor(private treeControl: FlatTreeControl<F>,\n private treeFlattener: MatTreeFlattener<T, F>,\n initialData: T[] = []) {\n super();\n this._data = new BehaviorSubject<T[]>(initialData);\n }\n\n connect(collectionViewer: CollectionViewer): Observable<F[]> {\n const changes = [\n collectionViewer.viewChange,\n this.treeControl.expansionModel.onChange!,\n this._flattenedData\n ];\n return merge(...changes).pipe(map(() => {\n this._expandedData.next(\n this.treeFlattener.expandFlattenedNodes(this._flattenedData.value, this.treeControl));\n return this._expandedData.value;\n }));\n }\n\n disconnect() {\n // no op\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\n\nimport {CdkTreeModule} from '@angular/cdk/tree';\nimport {CommonModule} from '@angular/common';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatNestedTreeNode, MatTreeNodeDef, MatTreeNode} from './node';\nimport {MatTree} from './tree';\nimport {MatTreeNodeToggle} from './toggle';\nimport {MatTreeNodeOutlet} from './outlet';\nimport {MatTreeNodePadding} from './padding';\n\nconst MAT_TREE_DIRECTIVES = [\n MatNestedTreeNode,\n MatTreeNodeDef,\n MatTreeNodePadding,\n MatTreeNodeToggle,\n MatTree,\n MatTreeNode,\n MatTreeNodeOutlet\n];\n\n@NgModule({\n imports: [CdkTreeModule, CommonModule, MatCommonModule],\n exports: MAT_TREE_DIRECTIVES,\n declarations: MAT_TREE_DIRECTIVES,\n})\nexport class MatTreeModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {Directive, Input} from '@angular/core';\nimport {CdkTreeNodeToggle} from '@angular/cdk/tree';\n\n/**\n * Wrapper for the CdkTree's toggle with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeToggle]',\n host: {\n '(click)': '_toggle($event)',\n },\n providers: [{provide: CdkTreeNodeToggle, useExisting: MatTreeNodeToggle}]\n})\nexport class MatTreeNodeToggle<T> extends CdkTreeNodeToggle<T> {\n @Input('matTreeNodeToggleRecursive') recursive: boolean = false;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {ChangeDetectionStrategy, Component, ViewChild, ViewEncapsulation} from '@angular/core';\nimport {CdkTree} from '@angular/cdk/tree';\nimport {MatTreeNodeOutlet} from './outlet';\n\n/**\n * Wrapper for the CdkTable with Material design styles.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-tree',\n exportAs: 'matTree',\n template: `<ng-container matTreeNodeOutlet></ng-container>`,\n host: {\n 'class': 'mat-tree',\n 'role': 'tree',\n },\n styleUrls: ['tree.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{provide: CdkTree, useExisting: MatTree}]\n})\nexport class MatTree<T> extends CdkTree<T> {\n // Outlets within the tree's template where the dataNodes will be inserted.\n @ViewChild(MatTreeNodeOutlet) _nodeOutlet: MatTreeNodeOutlet;\n}\n\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {CdkTreeNodePadding} from '@angular/cdk/tree';\nimport {Directive, Input} from '@angular/core';\n\n\n/**\n * Wrapper for the CdkTree padding with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodePadding]',\n providers: [{provide: CdkTreeNodePadding, useExisting: MatTreeNodePadding}]\n})\nexport class MatTreeNodePadding<T> extends CdkTreeNodePadding<T> {\n\n /** The level of depth of the tree node. The padding will be `level * indent` pixels. */\n @Input('matTreeNodePadding') level: number;\n\n /** The indent for each level. Default number 40px from material design menu sub-menu spec. */\n @Input('matTreeNodePaddingIndent') indent: number;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {\n CdkNestedTreeNode,\n CdkTree,\n CdkTreeNode,\n CdkTreeNodeDef,\n} from '@angular/cdk/tree';\nimport {\n AfterContentInit,\n Attribute,\n ContentChildren,\n Directive,\n ElementRef,\n Input,\n IterableDiffers,\n OnDestroy,\n QueryList\n} from '@angular/core';\nimport {CanDisable, HasTabIndex, mixinDisabled, mixinTabIndex} from '@angular/material/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n\nexport const _MatTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkTreeNode));\nexport const _MatNestedTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkNestedTreeNode));\n\n/**\n * Wrapper for the CdkTree node with Material design styles.\n */\n@Directive({\n selector: 'mat-tree-node',\n exportAs: 'matTreeNode',\n inputs: ['disabled', 'tabIndex'],\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.aria-level]': 'role === \"treeitem\" ? level : null',\n '[attr.role]': 'role',\n 'class': 'mat-tree-node'\n },\n providers: [{provide: CdkTreeNode, useExisting: MatTreeNode}]\n})\nexport class MatTreeNode<T> extends _MatTreeNodeMixinBase<T>\n implements CanDisable, HasTabIndex {\n @Input() role: 'treeitem' | 'group' = 'treeitem';\n\n constructor(protected _elementRef: ElementRef,\n protected _tree: CdkTree<T>,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n}\n\n/**\n * Wrapper for the CdkTree node definition with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeDef]',\n inputs: [\n 'when: matTreeNodeDefWhen'\n ],\n providers: [{provide: CdkTreeNodeDef, useExisting: MatTreeNodeDef}]\n})\nexport class MatTreeNodeDef<T> extends CdkTreeNodeDef<T> {\n @Input('matTreeNode') data: T;\n}\n\n/**\n * Wrapper for the CdkTree nested node with Material design styles.\n */\n@Directive({\n selector: 'mat-nested-tree-node',\n exportAs: 'matNestedTreeNode',\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.role]': 'role',\n 'class': 'mat-nested-tree-node',\n },\n inputs: ['disabled', 'tabIndex'],\n providers: [\n {provide: CdkNestedTreeNode, useExisting: MatNestedTreeNode},\n {provide: CdkTreeNode, useExisting: MatNestedTreeNode}\n ]\n})\nexport class MatNestedTreeNode<T> extends _MatNestedTreeNodeMixinBase<T>\n implements AfterContentInit, CanDisable, HasTabIndex, OnDestroy {\n\n @Input('matNestedTreeNode') node: T;\n\n @ContentChildren(MatTreeNodeOutlet) nodeOutlet: QueryList<MatTreeNodeOutlet>;\n\n constructor(protected _elementRef: ElementRef,\n protected _tree: CdkTree<T>,\n protected _differs: IterableDiffers,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree, _differs);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n\n // This is a workaround for https://github.com/angular/angular/issues/23091\n // In aot mode, the lifecycle hooks from parent class are not called.\n // TODO(tinayuangao): Remove when the angular issue #23091 is fixed\n ngAfterContentInit() {\n super.ngAfterContentInit();\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {CdkTreeNodeOutlet} from '@angular/cdk/tree';\nimport {\n Directive,\n ViewContainerRef,\n} from '@angular/core';\n\n/**\n * Outlet for nested CdkNode. Put `[matTreeNodeOutlet]` on a tag to place children dataNodes\n * inside the outlet.\n */\n@Directive({\n selector: '[matTreeNodeOutlet]'\n})\nexport class MatTreeNodeOutlet implements CdkTreeNodeOutlet {\n constructor(public viewContainer: ViewContainerRef) {}\n}\n"],"names":["tslib_1.__extends"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tree.es5.js","sources":["../../../src/lib/tree/data-source/nested-data-source.ts","../../../src/lib/tree/data-source/flat-data-source.ts","../../../src/lib/tree/tree-module.ts","../../../src/lib/tree/toggle.ts","../../../src/lib/tree/tree.ts","../../../src/lib/tree/padding.ts","../../../src/lib/tree/node.ts","../../../src/lib/tree/outlet.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n\n/**\n * Data source for nested tree.\n *\n * The data source for nested tree doesn't have to consider node flattener, or the way to expand\n * or collapse. The expansion/collapsion will be handled by TreeControl and each non-leaf node.\n */\nexport class MatTreeNestedDataSource<T> extends DataSource<T> {\n _data = new BehaviorSubject<T[]>([]);\n\n /**\n * Data for the nested tree\n */\n get data() { return this._data.value; }\n set data(value: T[]) { this._data.next(value); }\n\n connect(collectionViewer: CollectionViewer): Observable<T[]> {\n return merge(...[collectionViewer.viewChange, this._data])\n .pipe(map(() => {\n return this.data;\n }));\n }\n\n disconnect() {\n // no op\n }\n}\n\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {FlatTreeControl, TreeControl} from '@angular/cdk/tree';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map, take} from 'rxjs/operators';\n\n/**\n * Tree flattener to convert a normal type of node to node with children & level information.\n * Transform nested nodes of type `T` to flattened nodes of type `F`.\n *\n * For example, the input data of type `T` is nested, and contains its children data:\n * SomeNode: {\n * key: 'Fruits',\n * children: [\n * NodeOne: {\n * key: 'Apple',\n * },\n * NodeTwo: {\n * key: 'Pear',\n * }\n * ]\n * }\n * After flattener flatten the tree, the structure will become\n * SomeNode: {\n * key: 'Fruits',\n * expandable: true,\n * level: 1\n * },\n * NodeOne: {\n * key: 'Apple',\n * expandable: false,\n * level: 2\n * },\n * NodeTwo: {\n * key: 'Pear',\n * expandable: false,\n * level: 2\n * }\n * and the output flattened type is `F` with additional information.\n */\nexport class MatTreeFlattener<T, F> {\n\n constructor(public transformFunction: (node: T, level: number) => F,\n public getLevel: (node: F) => number,\n public isExpandable: (node: F) => boolean,\n public getChildren: (node: T) => Observable<T[]> | T[]) {}\n\n _flattenNode(node: T, level: number,\n resultNodes: F[], parentMap: boolean[]): F[] {\n const flatNode = this.transformFunction(node, level);\n resultNodes.push(flatNode);\n\n if (this.isExpandable(flatNode)) {\n const childrenNodes = this.getChildren(node);\n if (Array.isArray(childrenNodes)) {\n this._flattenChildren(childrenNodes, level, resultNodes, parentMap);\n } else {\n childrenNodes.pipe(take(1)).subscribe(children => {\n this._flattenChildren(children, level, resultNodes, parentMap);\n });\n }\n }\n return resultNodes;\n }\n\n _flattenChildren(children: T[], level: number,\n resultNodes: F[], parentMap: boolean[]): void {\n children.forEach((child, index) => {\n let childParentMap: boolean[] = parentMap.slice();\n childParentMap.push(index != children.length - 1);\n this._flattenNode(child, level + 1, resultNodes, childParentMap);\n });\n }\n\n /**\n * Flatten a list of node type T to flattened version of node F.\n * Please note that type T may be nested, and the length of `structuredData` may be different\n * from that of returned list `F[]`.\n */\n flattenNodes(structuredData: T[]): F[] {\n let resultNodes: F[] = [];\n structuredData.forEach(node => this._flattenNode(node, 0, resultNodes, []));\n return resultNodes;\n }\n\n /**\n * Expand flattened node with current expansion status.\n * The returned list may have different length.\n */\n expandFlattenedNodes(nodes: F[], treeControl: TreeControl<F>): F[] {\n let results: F[] = [];\n let currentExpand: boolean[] = [];\n currentExpand[0] = true;\n\n nodes.forEach(node => {\n let expand = true;\n for (let i = 0; i <= this.getLevel(node); i++) {\n expand = expand && currentExpand[i];\n }\n if (expand) {\n results.push(node);\n }\n if (this.isExpandable(node)) {\n currentExpand[this.getLevel(node) + 1] = treeControl.isExpanded(node);\n }\n });\n return results;\n }\n}\n\n\n/**\n * Data source for flat tree.\n * The data source need to handle expansion/collapsion of the tree node and change the data feed\n * to `MatTree`.\n * The nested tree nodes of type `T` are flattened through `MatTreeFlattener`, and converted\n * to type `F` for `MatTree` to consume.\n */\nexport class MatTreeFlatDataSource<T, F> extends DataSource<F> {\n _flattenedData = new BehaviorSubject<F[]>([]);\n\n _expandedData = new BehaviorSubject<F[]>([]);\n\n _data: BehaviorSubject<T[]>;\n get data() { return this._data.value; }\n set data(value: T[]) {\n this._data.next(value);\n this._flattenedData.next(this.treeFlattener.flattenNodes(this.data));\n this.treeControl.dataNodes = this._flattenedData.value;\n }\n\n constructor(private treeControl: FlatTreeControl<F>,\n private treeFlattener: MatTreeFlattener<T, F>,\n initialData: T[] = []) {\n super();\n this._data = new BehaviorSubject<T[]>(initialData);\n }\n\n connect(collectionViewer: CollectionViewer): Observable<F[]> {\n const changes = [\n collectionViewer.viewChange,\n this.treeControl.expansionModel.onChange!,\n this._flattenedData\n ];\n return merge(...changes).pipe(map(() => {\n this._expandedData.next(\n this.treeFlattener.expandFlattenedNodes(this._flattenedData.value, this.treeControl));\n return this._expandedData.value;\n }));\n }\n\n disconnect() {\n // no op\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\n\nimport {CdkTreeModule} from '@angular/cdk/tree';\nimport {CommonModule} from '@angular/common';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatNestedTreeNode, MatTreeNodeDef, MatTreeNode} from './node';\nimport {MatTree} from './tree';\nimport {MatTreeNodeToggle} from './toggle';\nimport {MatTreeNodeOutlet} from './outlet';\nimport {MatTreeNodePadding} from './padding';\n\nconst MAT_TREE_DIRECTIVES = [\n MatNestedTreeNode,\n MatTreeNodeDef,\n MatTreeNodePadding,\n MatTreeNodeToggle,\n MatTree,\n MatTreeNode,\n MatTreeNodeOutlet\n];\n\n@NgModule({\n imports: [CdkTreeModule, CommonModule, MatCommonModule],\n exports: MAT_TREE_DIRECTIVES,\n declarations: MAT_TREE_DIRECTIVES,\n})\nexport class MatTreeModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkTreeNodeToggle} from '@angular/cdk/tree';\nimport {Directive, Input} from '@angular/core';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTreeNodeToggle = CdkTreeNodeToggle;\n\n/**\n * Wrapper for the CdkTree's toggle with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeToggle]',\n host: {\n '(click)': '_toggle($event)',\n },\n providers: [{provide: CdkTreeNodeToggle, useExisting: MatTreeNodeToggle}]\n})\nexport class MatTreeNodeToggle<T> extends _CdkTreeNodeToggle<T> {\n @Input('matTreeNodeToggleRecursive') recursive: boolean = false;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkTree} from '@angular/cdk/tree';\nimport {ChangeDetectionStrategy, Component, ViewChild, ViewEncapsulation} from '@angular/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTree = CdkTree;\n\n/**\n * Wrapper for the CdkTable with Material design styles.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-tree',\n exportAs: 'matTree',\n template: `<ng-container matTreeNodeOutlet></ng-container>`,\n host: {\n 'class': 'mat-tree',\n 'role': 'tree',\n },\n styleUrls: ['tree.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{provide: CdkTree, useExisting: MatTree}]\n})\nexport class MatTree<T> extends _CdkTree<T> {\n // Outlets within the tree's template where the dataNodes will be inserted.\n @ViewChild(MatTreeNodeOutlet) _nodeOutlet: MatTreeNodeOutlet;\n}\n\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {CdkTreeNodePadding} from '@angular/cdk/tree';\nimport {Directive, Input} from '@angular/core';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTreeNodePadding = CdkTreeNodePadding;\n\n/**\n * Wrapper for the CdkTree padding with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodePadding]',\n providers: [{provide: CdkTreeNodePadding, useExisting: MatTreeNodePadding}]\n})\nexport class MatTreeNodePadding<T> extends _CdkTreeNodePadding<T> {\n\n /** The level of depth of the tree node. The padding will be `level * indent` pixels. */\n @Input('matTreeNodePadding') level: number;\n\n /** The indent for each level. Default number 40px from material design menu sub-menu spec. */\n @Input('matTreeNodePaddingIndent') indent: number;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {CdkNestedTreeNode, CdkTree, CdkTreeNode, CdkTreeNodeDef} from '@angular/cdk/tree';\nimport {\n AfterContentInit,\n Attribute,\n ContentChildren,\n Directive,\n ElementRef,\n Input,\n IterableDiffers,\n OnDestroy,\n QueryList,\n} from '@angular/core';\nimport {CanDisable, HasTabIndex, mixinDisabled, mixinTabIndex} from '@angular/material/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTreeNodeDef = CdkTreeNodeDef;\n\nexport const _MatTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkTreeNode));\nexport const _MatNestedTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkNestedTreeNode));\n\n/**\n * Wrapper for the CdkTree node with Material design styles.\n */\n@Directive({\n selector: 'mat-tree-node',\n exportAs: 'matTreeNode',\n inputs: ['disabled', 'tabIndex'],\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.aria-level]': 'role === \"treeitem\" ? level : null',\n '[attr.role]': 'role',\n 'class': 'mat-tree-node'\n },\n providers: [{provide: CdkTreeNode, useExisting: MatTreeNode}]\n})\nexport class MatTreeNode<T> extends _MatTreeNodeMixinBase<T>\n implements CanDisable, HasTabIndex {\n @Input() role: 'treeitem' | 'group' = 'treeitem';\n\n constructor(protected _elementRef: ElementRef<HTMLElement>,\n protected _tree: CdkTree<T>,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n}\n\n/**\n * Wrapper for the CdkTree node definition with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeDef]',\n inputs: [\n 'when: matTreeNodeDefWhen'\n ],\n providers: [{provide: CdkTreeNodeDef, useExisting: MatTreeNodeDef}]\n})\nexport class MatTreeNodeDef<T> extends _CdkTreeNodeDef<T> {\n @Input('matTreeNode') data: T;\n}\n\n/**\n * Wrapper for the CdkTree nested node with Material design styles.\n */\n@Directive({\n selector: 'mat-nested-tree-node',\n exportAs: 'matNestedTreeNode',\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.role]': 'role',\n 'class': 'mat-nested-tree-node',\n },\n inputs: ['disabled', 'tabIndex'],\n providers: [\n {provide: CdkNestedTreeNode, useExisting: MatNestedTreeNode},\n {provide: CdkTreeNode, useExisting: MatNestedTreeNode}\n ]\n})\nexport class MatNestedTreeNode<T> extends _MatNestedTreeNodeMixinBase<T>\n implements AfterContentInit, CanDisable, HasTabIndex, OnDestroy {\n\n @Input('matNestedTreeNode') node: T;\n\n @ContentChildren(MatTreeNodeOutlet) nodeOutlet: QueryList<MatTreeNodeOutlet>;\n\n constructor(protected _elementRef: ElementRef<HTMLElement>,\n protected _tree: CdkTree<T>,\n protected _differs: IterableDiffers,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree, _differs);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n\n // This is a workaround for https://github.com/angular/angular/issues/23091\n // In aot mode, the lifecycle hooks from parent class are not called.\n // TODO(tinayuangao): Remove when the angular issue #23091 is fixed\n ngAfterContentInit() {\n super.ngAfterContentInit();\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {CdkTreeNodeOutlet} from '@angular/cdk/tree';\nimport {\n Directive,\n ViewContainerRef,\n} from '@angular/core';\n\n/**\n * Outlet for nested CdkNode. Put `[matTreeNodeOutlet]` on a tag to place children dataNodes\n * inside the outlet.\n */\n@Directive({\n selector: '[matTreeNodeOutlet]'\n})\nexport class MatTreeNodeOutlet implements CdkTreeNodeOutlet {\n constructor(public viewContainer: ViewContainerRef) {}\n}\n"],"names":["tslib_1.__extends"],"mappings":";;;;;;;;;;;;;;;;;;;;AOQA;;;;;IAaE,SAAF,iBAAA,CAAqB,aAA+B,EAApD;QAAqB,IAArB,CAAA,aAAkC,GAAb,aAAa,CAAkB;KAAI;;QAJxD,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW;oBACT,QAAQ,EAAE,qBAAqB;iBAChC,EAAD,EAAA;;;;QATA,EAAA,IAAA,EAAE,gBAAgB,GAAlB;;IAVA,OAAA,iBAAA,CAAA;;;;;;;;ADwBA,AAAA,IAAA,iBAAa,eAAe,GAAG,cAAc,CAAC;AAE9C,AAAA,IAAA,iBAAa,qBAAqB,GAAG,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;AAC/E,AAAA,IAAA,iBAAa,2BAA2B,GAAG,aAAa,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;;;;;;IAiBvDA,SAApC,CAAA,WAAA,EAAA,MAAA,CAAA,CAA4D;IAI1D,SAAF,WAAA,CAAwB,WAAoC,EACpC,KAAiB,EACJ,QAFrC,EAAA;QAAE,IAAF,KAAA,GAGI,MAHJ,CAAA,IAAA,CAAA,IAAA,EAGU,WAAW,EAAE,KAAK,CAAC,IAH7B,IAAA,CAMG;QANqB,KAAxB,CAAA,WAAmC,GAAX,WAAW,CAAyB;QACpC,KAAxB,CAAA,KAA6B,GAAL,KAAK,CAAY;QAHzC,KAAA,CAAA,IAAA,GAAwC,UAAU,CAAlD;QAOI,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;;KACvC;;QAtBH,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW;oBACT,QAAQ,EAAE,eAAe;oBACzB,QAAQ,EAAE,aAAa;oBACvB,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;oBAChC,IAAI,EAAE;wBACJ,sBAAsB,EAAE,YAAY;wBACpC,mBAAmB,EAAE,oCAAoC;wBACzD,aAAa,EAAE,MAAM;wBACrB,OAAO,EAAE,eAAe;qBACzB;oBACD,SAAS,EAAE,CAAC,EAAC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAC,CAAC;iBAC9D,EAAD,EAAA;;;;QA7BA,EAAA,IAAA,EAAE,UAAU,GAAZ;QANA,EAAA,IAAA,EAA2B,OAAO,GAAlC;QA0CA,EAAA,IAAA,EAAA,SAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAe,SAAS,EAAxB,IAAA,EAAA,CAAyB,UAAU,EAAnC,EAAA,EAAA,EAAA;;;QAJA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAG,KAAK,EAAR,EAAA;;IA9CA,OAAA,WAAA,CAAA;CA4CA,CAAoC,qBAAqB,CAAzD,CAAA,CAAA;AAAA;;;;;IAuBuCA,SAAvC,CAAA,cAAA,EAAA,MAAA,CAAA,CAAyD;;;;;QAPzD,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW;oBACT,QAAQ,EAAE,kBAAkB;oBAC5B,MAAM,EAAE;wBACN,0BAA0B;qBAC3B;oBACD,SAAS,EAAE,CAAC,EAAC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAC,CAAC;iBACpE,EAAD,EAAA;;;;QAEA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAG,KAAK,EAAR,IAAA,EAAA,CAAS,aAAa,EAAtB,EAAA,EAAA;;IApEA,OAAA,cAAA,CAAA;CAmEA,CAAuC,eAAe,CAAtD,CAAA,CAAA;AAAA;;;;;IAqB0CA,SAA1C,CAAA,iBAAA,EAAA,MAAA,CAAA,CAAwE;IAOtE,SAAF,iBAAA,CAAwB,WAAoC,EACpC,KAAiB,EACjB,QAAyB,EACZ,QAHrC,EAAA;QAAE,IAAF,KAAA,GAII,MAJJ,CAAA,IAAA,CAAA,IAAA,EAIU,WAAW,EAAE,KAAK,EAAE,QAAQ,CAAC,IAJvC,IAAA,CAOG;QAPqB,KAAxB,CAAA,WAAmC,GAAX,WAAW,CAAyB;QACpC,KAAxB,CAAA,KAA6B,GAAL,KAAK,CAAY;QACjB,KAAxB,CAAA,QAAgC,GAAR,QAAQ,CAAiB;QAI7C,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;;KACvC;;;;;;;IAKD,iBAAF,CAAA,SAAA,CAAA,kBAAoB;;;IAAlB,YAAF;QACI,MAAJ,CAAA,SAAA,CAAU,kBAAkB,CAA5B,IAAA,CAAA,IAAA,CAA8B,CAAC;KAC5B,CAAH;;;;IAEE,iBAAF,CAAA,SAAA,CAAA,WAAa;;;IAAX,YAAF;QACI,MAAJ,CAAA,SAAA,CAAU,WAAW,CAArB,IAAA,CAAA,IAAA,CAAuB,CAAC;KACrB,CAAH;;QAvCA,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,QAAQ,EAAE,mBAAmB;oBAC7B,IAAI,EAAE;wBACJ,sBAAsB,EAAE,YAAY;wBACpC,aAAa,EAAE,MAAM;wBACrB,OAAO,EAAE,sBAAsB;qBAChC;oBACD,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;oBAChC,SAAS,EAAE;wBACT,EAAC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,EAAC;wBAC5D,EAAC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAC;qBACvD;iBACF,EAAD,EAAA;;;;QAzEA,EAAA,IAAA,EAAE,UAAU,GAAZ;QANA,EAAA,IAAA,EAA2B,OAAO,GAAlC;QAQA,EAAA,IAAA,EAAE,eAAe,GAAjB;QAkFA,EAAA,IAAA,EAAA,SAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAe,SAAS,EAAxB,IAAA,EAAA,CAAyB,UAAU,EAAnC,EAAA,EAAA,EAAA;;;QAPA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAG,KAAK,EAAR,IAAA,EAAA,CAAS,mBAAmB,EAA5B,EAAA,EAAA;QAEA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAG,eAAe,EAAlB,IAAA,EAAA,CAAmB,iBAAiB,EAApC,EAAA,EAAA;;IA7FA,OAAA,iBAAA,CAAA;CAwFA,CAA0C,2BAA2B,CAArE,CAAA;;;;;;;AD7EA,AAAA,IAAA,iBAAa,mBAAmB,GAAG,kBAAkB,CAAC;;;;;;IASXA,SAA3C,CAAA,kBAAA,EAAA,MAAA,CAAA,CAAiE;;;;;QAJjE,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,SAAS,EAAE,CAAC,EAAC,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,kBAAkB,EAAC,CAAC;iBAC5E,EAAD,EAAA;;;;QAIA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAG,KAAK,EAAR,IAAA,EAAA,CAAS,oBAAoB,EAA7B,EAAA,EAAA;QAGA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAG,KAAK,EAAR,IAAA,EAAA,CAAS,0BAA0B,EAAnC,EAAA,EAAA;;IA1BA,OAAA,kBAAA,CAAA;CAoBA,CAA2C,mBAAmB,CAA9D,CAAA;;;;;;;ADPA,AAAA,IAAA,iBAAa,QAAQ,GAAG,OAAO,CAAC;;;;;;IAmBAA,SAAhC,CAAA,OAAA,EAAA,MAAA,CAAA,CAA2C;;;;;QAd3C,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW,CAAX,QAAA,EAAA,UAAA;oBACE,QAAQ,EAAE,SAAS;oBACnB,QAAQ,EAAE,iDAAZ;oBACE,IAAF,EAAA;wBACA,OAAA,EAAA,UAAA;wBACM,MAAN,EAAA,MAAA;qBACA;oBACA,MAAA,EAAA,CAAA,iLAAA,CAAA;oBACA,aAAA,EAAA,iBAAA,CAAA,IAAA;oBACE,eAAF,EAAA,uBAAA,CAAA,MAAA;oBACE,SAAF,EAAA,CAAA,EAAA,OAAA,EAAA,OAAA,EAAkC,WAAlC,EAAA,OAAA,EAAA,CAAA;iBACA,EAAA,EAAA;KACA,CAAA;;;;;IAIA,OAAA,OAAA,CAAA;;;;;;;;ADtBA,AAAA,IAAA,iBAAa,kBAAkB,GAAG,iBAAiB,CAAC;;;;;;IAYVA,SAA1C,CAAA,iBAAA,EAAA,MAAA,CAAA,CAA+D;;;QAC/D,KAAA,CAAA,SAAA,GAA4D,KAAK,CAAjE;;;;QARA,EAAA,IAAA,EAAC,SAAS,EAAV,IAAA,EAAA,CAAW;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,IAAI,EAAE;wBACJ,SAAS,EAAE,iBAAiB;qBAC7B;oBACD,SAAS,EAAE,CAAC,EAAC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,EAAC,CAAC;iBAC1E,EAAD,EAAA;;;;QAEA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAG,KAAK,EAAR,IAAA,EAAA,CAAS,4BAA4B,EAArC,EAAA,EAAA;;IAzBA,OAAA,iBAAA,CAAA;CAwBA,CAA0C,kBAAkB,CAA5D,CAAA;;;;;;ADLA,qBAAM,mBAAmB,GAAG;IAC1B,iBAAiB;IACjB,cAAc;IACd,kBAAkB;IAClB,iBAAiB;IACjB,OAAO;IACP,WAAW;IACX,iBAAiB;CAClB,CAAC;;;;;QAEF,EAAA,IAAA,EAAC,QAAQ,EAAT,IAAA,EAAA,CAAU;oBACR,OAAO,EAAE,CAAC,aAAa,EAAE,YAAY,EAAE,eAAe,CAAC;oBACvD,OAAO,EAAE,mBAAmB;oBAC5B,YAAY,EAAE,mBAAmB;iBAClC,EAAD,EAAA;;IAjCA,OAAA,aAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AD+CA,AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gBAAA,kBAAA,YAAA;IAEE,SAAF,gBAAA,CAAqB,iBAAgD,EAChD,QADrB,EAEqB,YAFrB,EAGqB,WAHrB,EAAA;QAAqB,IAArB,CAAA,iBAAsC,GAAjB,iBAAiB,CAA+B;QAChD,IAArB,CAAA,QAA6B,GAAR,QAAQ,CAA7B;QACqB,IAArB,CAAA,YAAiC,GAAZ,YAAY,CAAjC;QACqB,IAArB,CAAA,WAAgC,GAAX,WAAW,CAAhC;KAAwE;;;;;;;;IAEtE,gBAAF,CAAA,SAAA,CAAA,YAAc;;;;;;;IAAZ,UAAa,IAAO,EAAE,KAAa,EACtB,WAAgB,EAAE,SAAoB,EADrD;QAAE,IAAF,KAAA,GAAA,IAAA,CAgBG;QAdC,qBAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrD,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE3B,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE;YAC/B,qBAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;gBAChC,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;aACrE;iBAAM;gBACL,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAA,QAAQ,EAAtD;oBACU,KAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;iBAChE,CAAC,CAAC;aACJ;SACF;QACD,OAAO,WAAW,CAAC;KACpB,CAAH;;;;;;;;IAEE,gBAAF,CAAA,SAAA,CAAA,gBAAkB;;;;;;;IAAhB,UAAiB,QAAa,EAAE,KAAa,EAC5B,WAAgB,EAAE,SAAoB,EADzD;QAAE,IAAF,KAAA,GAAA,IAAA,CAOG;QALC,QAAQ,CAAC,OAAO,CAAC,UAAC,KAAK,EAAE,KAAK,EAAlC;YACM,qBAAI,cAAc,GAAc,SAAS,CAAC,KAAK,EAAE,CAAC;YAClD,cAAc,CAAC,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAClD,KAAI,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;SAClE,CAAC,CAAC;KACJ,CAAH;;;;;;;;;;;;;IAOE,gBAAF,CAAA,SAAA,CAAA,YAAc;;;;;;;IAAZ,UAAa,cAAmB,EAAlC;QAAE,IAAF,KAAA,GAAA,IAAA,CAIG;QAHC,qBAAI,WAAW,GAAQ,EAAE,CAAC;QAC1B,cAAc,CAAC,OAAO,CAAC,UAAA,IAAI,EAA/B,EAAmC,OAAA,KAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC,CAA9E,EAA8E,CAAC,CAAC;QAC5E,OAAO,WAAW,CAAC;KACpB,CAAH;;;;;;;;;;;;IAME,gBAAF,CAAA,SAAA,CAAA,oBAAsB;;;;;;;IAApB,UAAqB,KAAU,EAAE,WAA2B,EAA9D;QAAE,IAAF,KAAA,GAAA,IAAA,CAkBG;QAjBC,qBAAI,OAAO,GAAQ,EAAE,CAAC;QACtB,qBAAI,aAAa,GAAc,EAAE,CAAC;QAClC,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QAExB,KAAK,CAAC,OAAO,CAAC,UAAA,IAAI,EAAtB;YACM,qBAAI,MAAM,GAAG,IAAI,CAAC;YAClB,KAAK,qBAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7C,MAAM,GAAG,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;aACrC;YACD,IAAI,MAAM,EAAE;gBACV,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACpB;YACD,IAAI,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;gBAC3B,aAAa,CAAC,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;aACvE;SACF,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;KAChB,CAAH;IAlHA,OAAA,gBAAA,CAAA;CAmHA,EAAA,CAAC,CAAA;;;;;;;;;AAUD,AAAA,IAAA;;;;;;;;AAAA,qBAAA,kBAAA,UAAA,MAAA,EAAA;IAAiDA,SAAjD,CAAA,qBAAA,EAAA,MAAA,CAAA,CAA8D;IAa5D,SAAF,qBAAA,CAAsB,WAA+B,EAC/B,aADtB,EAEc,WAAqB,EAFnC;QAEc,IAAd,WAAA,KAAA,KAAA,CAAA,EAAc,EAAA,WAAd,GAAA,EAAmC,CAAnC,EAAA;QAFE,IAAF,KAAA,GAGI,MAHJ,CAAA,IAAA,CAAA,IAAA,CAGW,IAHX,IAAA,CAKG;QALmB,KAAtB,CAAA,WAAiC,GAAX,WAAW,CAAoB;QAC/B,KAAtB,CAAA,aAAmC,GAAb,aAAa,CAAnC;QAbA,KAAA,CAAA,cAAA,GAAmB,IAAI,eAAe,CAAM,EAAE,CAAC,CAA/C;QAEA,KAAA,CAAA,aAAA,GAAkB,IAAI,eAAe,CAAM,EAAE,CAAC,CAA9C;QAcI,KAAI,CAAC,KAAK,GAAG,IAAI,eAAe,CAAM,WAAW,CAAC,CAAC;;KACpD;IAZD,MAAF,CAAA,cAAA,CAAM,qBAAN,CAAA,SAAA,EAAA,MAAU,EAAV;;;;QAAE,YAAF,EAAe,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;;;;;QACvC,UAAS,KAAU,EAArB;YACI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACrE,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;SACxD;;;KALH,CAAA,CAAyC;;;;;IAcvC,qBAAF,CAAA,SAAA,CAAA,OAAS;;;;IAAP,UAAQ,gBAAkC,EAA5C;QAAE,IAAF,KAAA,GAAA,IAAA,CAWG;QAVC,qBAAM,OAAO,GAAG;YACd,gBAAgB,CAAC,UAAU;+BAC3B,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,QAAQ;YACxC,IAAI,CAAC,cAAc;SACpB,CAAC;QACF,OAAO,KAAK,CAAhB,KAAA,CAAA,KAAA,CAAA,EAAoB,OAAO,CAA3B,CAA6B,IAAI,CAAC,GAAG,CAAC,YAAtC;YACM,KAAI,CAAC,aAAa,CAAC,IAAI,CACrB,KAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,KAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACxF,OAAO,KAAI,CAAC,aAAa,CAAC,KAAK,CAAC;SACjC,CAAC,CAAC,CAAC;KACL,CAAH;;;;IAEE,qBAAF,CAAA,SAAA,CAAA,UAAY;;;IAAV,YAAF;;KAEG,CAAH;IAhKA,OAAA,qBAAA,CAAA;CA6HA,CAAiD,UAAU,CAA3D,CAoCC;;;;;;;;;;;;;AD9ID,AAAA,IAAA;;;;;;;AAAA,uBAAA,kBAAA,UAAA,MAAA,EAAA;IAAgDA,SAAhD,CAAA,uBAAA,EAAA,MAAA,CAAA,CAA6D;;;QAC7D,KAAA,CAAA,KAAA,GAAU,IAAI,eAAe,CAAM,EAAE,CAAC,CAAtC;;;IAKE,MAAF,CAAA,cAAA,CAAM,uBAAN,CAAA,SAAA,EAAA,MAAU,EAAV;;;;;;;;QAAE,YAAF,EAAe,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;;;;;QACvC,UAAS,KAAU,EAArB,EAAyB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;;;KADlD,CAAA,CAAyC;;;;;IAGvC,uBAAF,CAAA,SAAA,CAAA,OAAS;;;;IAAP,UAAQ,gBAAkC,EAA5C;QAAE,IAAF,KAAA,GAAA,IAAA,CAKG;QAJC,OAAO,KAAK,CAAhB,KAAA,CAAA,KAAA,CAAA,EAAoB,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAA7D,CACO,IAAI,CAAC,GAAG,CAAC,YADhB;YAEQ,OAAO,KAAI,CAAC,IAAI,CAAC;SAClB,CAAC,CAAC,CAAC;KACP,CAAH;;;;IAEE,uBAAF,CAAA,SAAA,CAAA,UAAY;;;IAAV,YAAF;;KAEG,CAAH;IArCA,OAAA,uBAAA,CAAA;CAmBA,CAAgD,UAAU,CAA1D,CAmBC;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import { InjectionToken } from '@angular/core';
|
|
9
|
+
import { CdkAccordion } from '@angular/cdk/accordion';
|
|
10
|
+
/** MatAccordion's display modes. */
|
|
11
|
+
export declare type MatAccordionDisplayMode = 'default' | 'flat';
|
|
12
|
+
/**
|
|
13
|
+
* Base interface for a `MatAccordion`.
|
|
14
|
+
* @docs-private
|
|
15
|
+
*/
|
|
16
|
+
export interface MatAccordionBase extends CdkAccordion {
|
|
17
|
+
/** Whether the expansion indicator should be hidden. */
|
|
18
|
+
hideToggle: boolean;
|
|
19
|
+
/** Display mode used for all expansion panels in the accordion. */
|
|
20
|
+
displayMode: MatAccordionDisplayMode;
|
|
21
|
+
/** Handles keyboard events coming in from the panel headers. */
|
|
22
|
+
_handleHeaderKeydown: (event: KeyboardEvent) => void;
|
|
23
|
+
/** Handles focus events on the panel headers. */
|
|
24
|
+
_handleHeaderFocus: (header: any) => void;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Token used to provide a `MatAccordion` to `MatExpansionPanel`.
|
|
28
|
+
* Used primarily to avoid circular imports between `MatAccordion` and `MatExpansionPanel`.
|
|
29
|
+
*/
|
|
30
|
+
export declare const MAT_ACCORDION: InjectionToken<MatAccordionBase>;
|
|
@@ -1,15 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
import { QueryList, AfterContentInit } from '@angular/core';
|
|
1
9
|
import { CdkAccordion } from '@angular/cdk/accordion';
|
|
2
|
-
|
|
3
|
-
|
|
10
|
+
import { MatAccordionBase, MatAccordionDisplayMode } from './accordion-base';
|
|
11
|
+
import { MatExpansionPanelHeader } from './expansion-panel-header';
|
|
4
12
|
/**
|
|
5
13
|
* Directive for a Material Design Accordion.
|
|
6
14
|
*/
|
|
7
|
-
export declare class MatAccordion extends CdkAccordion {
|
|
15
|
+
export declare class MatAccordion extends CdkAccordion implements MatAccordionBase, AfterContentInit {
|
|
16
|
+
private _keyManager;
|
|
17
|
+
_headers: QueryList<MatExpansionPanelHeader>;
|
|
8
18
|
/** Whether the expansion indicator should be hidden. */
|
|
9
19
|
hideToggle: boolean;
|
|
10
20
|
private _hideToggle;
|
|
11
21
|
/**
|
|
12
|
-
*
|
|
22
|
+
* Display mode used for all expansion panels in the accordion. Currently two display
|
|
13
23
|
* modes exist:
|
|
14
24
|
* default - a gutter-like spacing is placed around any expanded panel, placing the expanded
|
|
15
25
|
* panel at a different elevation from the rest of the accordion.
|
|
@@ -17,4 +27,8 @@ export declare class MatAccordion extends CdkAccordion {
|
|
|
17
27
|
* elevation.
|
|
18
28
|
*/
|
|
19
29
|
displayMode: MatAccordionDisplayMode;
|
|
30
|
+
ngAfterContentInit(): void;
|
|
31
|
+
/** Handles keyboard events coming in from the panel headers. */
|
|
32
|
+
_handleHeaderKeydown(event: KeyboardEvent): void;
|
|
33
|
+
_handleHeaderFocus(header: MatExpansionPanelHeader): void;
|
|
20
34
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
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 { FocusMonitor } from '@angular/cdk/a11y';
|
|
8
|
+
import { FocusMonitor, FocusableOption, FocusOrigin } from '@angular/cdk/a11y';
|
|
9
9
|
import { ChangeDetectorRef, ElementRef, OnDestroy } from '@angular/core';
|
|
10
10
|
import { MatExpansionPanel } from './expansion-panel';
|
|
11
11
|
/**
|
|
@@ -13,7 +13,7 @@ import { MatExpansionPanel } from './expansion-panel';
|
|
|
13
13
|
*
|
|
14
14
|
* This component corresponds to the header element of an `<mat-expansion-panel>`.
|
|
15
15
|
*/
|
|
16
|
-
export declare class MatExpansionPanelHeader implements OnDestroy {
|
|
16
|
+
export declare class MatExpansionPanelHeader implements OnDestroy, FocusableOption {
|
|
17
17
|
panel: MatExpansionPanel;
|
|
18
18
|
private _element;
|
|
19
19
|
private _focusMonitor;
|
|
@@ -24,6 +24,11 @@ export declare class MatExpansionPanelHeader implements OnDestroy {
|
|
|
24
24
|
expandedHeight: string;
|
|
25
25
|
/** Height of the header while the panel is collapsed. */
|
|
26
26
|
collapsedHeight: string;
|
|
27
|
+
/**
|
|
28
|
+
* Whether the associated panel is disabled. Implemented as a part of `FocusableOption`.
|
|
29
|
+
* @docs-private
|
|
30
|
+
*/
|
|
31
|
+
readonly disabled: any;
|
|
27
32
|
/** Toggles the expanded state of the panel. */
|
|
28
33
|
_toggle(): void;
|
|
29
34
|
/** Gets whether the panel is expanded. */
|
|
@@ -36,6 +41,12 @@ export declare class MatExpansionPanelHeader implements OnDestroy {
|
|
|
36
41
|
_showToggle(): boolean;
|
|
37
42
|
/** Handle keydown event calling to toggle() if appropriate. */
|
|
38
43
|
_keydown(event: KeyboardEvent): void;
|
|
44
|
+
/**
|
|
45
|
+
* Focuses the panel header. Implemented as a part of `FocusableOption`.
|
|
46
|
+
* @param origin Origin of the action that triggered the focus.
|
|
47
|
+
* @docs-private
|
|
48
|
+
*/
|
|
49
|
+
focus(origin?: FocusOrigin): void;
|
|
39
50
|
ngOnDestroy(): void;
|
|
40
51
|
}
|
|
41
52
|
/**
|
|
@@ -9,10 +9,11 @@ import { AnimationEvent } from '@angular/animations';
|
|
|
9
9
|
import { CdkAccordionItem } from '@angular/cdk/accordion';
|
|
10
10
|
import { UniqueSelectionDispatcher } from '@angular/cdk/collections';
|
|
11
11
|
import { TemplatePortal } from '@angular/cdk/portal';
|
|
12
|
-
import { AfterContentInit, ChangeDetectorRef, OnChanges, OnDestroy, SimpleChanges, ViewContainerRef } from '@angular/core';
|
|
12
|
+
import { AfterContentInit, ChangeDetectorRef, ElementRef, OnChanges, OnDestroy, SimpleChanges, ViewContainerRef } from '@angular/core';
|
|
13
13
|
import { Subject } from 'rxjs';
|
|
14
|
-
import { MatAccordion } from './accordion';
|
|
15
14
|
import { MatExpansionPanelContent } from './expansion-panel-content';
|
|
15
|
+
import { MatAccordionBase } from './accordion-base';
|
|
16
|
+
export declare const _CdkAccordionItem: typeof CdkAccordionItem;
|
|
16
17
|
/** MatExpansionPanel's states. */
|
|
17
18
|
export declare type MatExpansionPanelState = 'expanded' | 'collapsed';
|
|
18
19
|
/**
|
|
@@ -23,22 +24,23 @@ export declare type MatExpansionPanelState = 'expanded' | 'collapsed';
|
|
|
23
24
|
*/
|
|
24
25
|
export declare class MatExpansionPanel extends CdkAccordionItem implements AfterContentInit, OnChanges, OnDestroy {
|
|
25
26
|
private _viewContainerRef;
|
|
27
|
+
private _document;
|
|
26
28
|
/** Whether the toggle indicator should be hidden. */
|
|
27
29
|
hideToggle: boolean;
|
|
28
30
|
private _hideToggle;
|
|
29
31
|
/** Stream that emits for changes in `@Input` properties. */
|
|
30
32
|
readonly _inputChanges: Subject<SimpleChanges>;
|
|
31
33
|
/** Optionally defined accordion the expansion panel belongs to. */
|
|
32
|
-
accordion:
|
|
34
|
+
accordion: MatAccordionBase;
|
|
33
35
|
/** Content that will be rendered lazily. */
|
|
34
36
|
_lazyContent: MatExpansionPanelContent;
|
|
37
|
+
/** Element containing the panel's user-provided content. */
|
|
38
|
+
_body: ElementRef<HTMLElement>;
|
|
35
39
|
/** Portal holding the user's content. */
|
|
36
40
|
_portal: TemplatePortal;
|
|
37
41
|
/** ID for the associated header element. Used for a11y labelling. */
|
|
38
42
|
_headerId: string;
|
|
39
|
-
constructor(accordion:
|
|
40
|
-
/** Whether the expansion indicator should be hidden. */
|
|
41
|
-
_getHideToggle(): boolean;
|
|
43
|
+
constructor(accordion: MatAccordionBase, _changeDetectorRef: ChangeDetectorRef, _uniqueSelectionDispatcher: UniqueSelectionDispatcher, _viewContainerRef: ViewContainerRef, _document?: any);
|
|
42
44
|
/** Determines whether the expansion panel should have spacing between it and its siblings. */
|
|
43
45
|
_hasSpacing(): boolean;
|
|
44
46
|
/** Gets the expanded state string. */
|
|
@@ -47,6 +49,8 @@ export declare class MatExpansionPanel extends CdkAccordionItem implements After
|
|
|
47
49
|
ngOnChanges(changes: SimpleChanges): void;
|
|
48
50
|
ngOnDestroy(): void;
|
|
49
51
|
_bodyAnimation(event: AnimationEvent): void;
|
|
52
|
+
/** Checks whether the expansion panel's content contains the currently-focused element. */
|
|
53
|
+
_containsFocus(): boolean;
|
|
50
54
|
}
|
|
51
55
|
export declare class MatExpansionPanelActionRow {
|
|
52
56
|
}
|