@angular/material 6.4.6 → 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 +5 -2
- package/autocomplete/typings/autocomplete-trigger.d.ts +12 -1
- package/autocomplete/typings/autocomplete.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 +32 -1
- 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 +2 -1
- 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-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.map +1 -1
- package/bundles/material-checkbox.umd.min.js.map +1 -1
- package/bundles/material-chips.umd.js +104 -92
- 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 +20 -4
- 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 +29 -18
- 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 +4 -4
- 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 +10 -9
- 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-progress-bar.umd.js +28 -10
- 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 +1 -1
- 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.map +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 +18 -21
- 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 +28 -54
- 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 +578 -386
- 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-toggle/typings/button-toggle.d.ts +1 -1
- 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 +5 -2
- 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 +1 -1
- 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 +29 -1
- 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 +2 -1
- package/esm2015/button-toggle.js.map +1 -1
- package/esm2015/card.js +1 -1
- package/esm2015/card.js.map +1 -1
- package/esm2015/checkbox.js.map +1 -1
- package/esm2015/chips.js +93 -74
- package/esm2015/chips.js.map +1 -1
- package/esm2015/core.js +10 -7
- package/esm2015/core.js.map +1 -1
- package/esm2015/datepicker.js +22 -5
- 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 +29 -19
- 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 +4 -4
- package/esm2015/list.js.map +1 -1
- package/esm2015/material.js +9 -9
- package/esm2015/material.js.map +1 -1
- package/esm2015/menu.js +7 -6
- package/esm2015/menu.js.map +1 -1
- package/esm2015/progress-bar.js +25 -6
- 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 +1 -1
- 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.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 +7 -17
- package/esm2015/tabs.js.map +1 -1
- package/esm2015/tooltip.js +9 -9
- package/esm2015/tooltip.js.map +1 -1
- package/esm2015/tree.js +16 -54
- package/esm2015/tree.js.map +1 -1
- package/esm5/autocomplete.es5.js +32 -1
- 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 +2 -1
- package/esm5/button-toggle.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.map +1 -1
- package/esm5/chips.es5.js +103 -91
- 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 +21 -5
- 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 +29 -18
- 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 +4 -4
- package/esm5/list.es5.js.map +1 -1
- package/esm5/material.es5.js +9 -9
- package/esm5/material.es5.js.map +1 -1
- package/esm5/menu.es5.js +5 -4
- package/esm5/menu.es5.js.map +1 -1
- package/esm5/progress-bar.es5.js +25 -9
- 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 +1 -1
- 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.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 +9 -12
- 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 +22 -53
- 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 +4 -3
- 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 +2 -2
- package/menu/typings/index.d.ts +4 -4
- package/menu/typings/index.metadata.json +1 -1
- 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 +4 -4
- 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/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 +7 -7
- package/tree/typings/padding.d.ts +3 -5
- package/tree/typings/toggle.d.ts +10 -3
- package/tree/typings/tree.d.ts +2 -3
- package/typings/autocomplete/autocomplete-trigger.d.ts +12 -1
- package/typings/autocomplete/autocomplete.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-toggle/button-toggle.d.ts +1 -1
- 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 +5 -2
- 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 +1 -1
- 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.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-toggle/button-toggle.d.ts +1 -1
- 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 +5 -2
- 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 +1 -1
- 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 +4 -3
- 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 +2 -2
- package/typings/esm5/menu/index.d.ts +4 -4
- package/typings/esm5/menu/index.metadata.json +1 -1
- 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/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/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 +7 -7
- package/typings/esm5/tree/padding.d.ts +3 -5
- package/typings/esm5/tree/toggle.d.ts +10 -3
- package/typings/esm5/tree/tree.d.ts +2 -3
- 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 +4 -3
- 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 +2 -2
- package/typings/menu/index.d.ts +4 -4
- package/typings/menu/index.metadata.json +1 -1
- 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/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/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 +7 -7
- package/typings/tree/padding.d.ts +3 -5
- package/typings/tree/toggle.d.ts +10 -3
- package/typings/tree/tree.d.ts +2 -3
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"material-sidenav.umd.min.js","sources":["../../node_modules/tslib/tslib.es6.js","../../src/lib/sidenav/drawer.ts","../../src/lib/sidenav/drawer-animations.ts","../../src/lib/sidenav/sidenav.ts","../../src/lib/sidenav/sidenav-module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\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 {FocusMonitor, FocusOrigin, FocusTrap, FocusTrapFactory} from '@angular/cdk/a11y';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {ESCAPE} from '@angular/cdk/keycodes';\nimport {Platform} from '@angular/cdk/platform';\nimport {CdkScrollable} from '@angular/cdk/scrolling';\nimport {DOCUMENT} from '@angular/common';\nimport {\n AfterContentChecked,\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n DoCheck,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n InjectionToken,\n Input,\n NgZone,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {fromEvent, merge, Observable, Subject} from 'rxjs';\nimport {debounceTime, filter, map, startWith, take, takeUntil} from 'rxjs/operators';\nimport {matDrawerAnimations} from './drawer-animations';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\n\n\n/** Throws an exception when two MatDrawer are matching the same position. */\nexport function throwMatDuplicatedDrawerError(position: string) {\n throw Error(`A drawer was already declared for 'position=\"${position}\"'`);\n}\n\n\n/** Result of the toggle promise that indicates the state of the drawer. */\nexport type MatDrawerToggleResult = 'open' | 'close';\n\n/** Configures whether drawers should use auto sizing by default. */\nexport const MAT_DRAWER_DEFAULT_AUTOSIZE =\n new InjectionToken<boolean>('MAT_DRAWER_DEFAULT_AUTOSIZE', {\n providedIn: 'root',\n factory: MAT_DRAWER_DEFAULT_AUTOSIZE_FACTORY,\n });\n\n/** @docs-private */\nexport function MAT_DRAWER_DEFAULT_AUTOSIZE_FACTORY(): boolean {\n return false;\n}\n\n@Component({\n moduleId: module.id,\n selector: 'mat-drawer-content',\n template: '<ng-content></ng-content>',\n host: {\n 'class': 'mat-drawer-content',\n '[style.margin-left.px]': '_container._contentMargins.left',\n '[style.margin-right.px]': '_container._contentMargins.right',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatDrawerContent implements AfterContentInit {\n constructor(\n private _changeDetectorRef: ChangeDetectorRef,\n @Inject(forwardRef(() => MatDrawerContainer)) public _container: MatDrawerContainer) {\n }\n\n ngAfterContentInit() {\n this._container._contentMarginChanges.subscribe(() => {\n this._changeDetectorRef.markForCheck();\n });\n }\n}\n\n\n/**\n * This component corresponds to a drawer that can be opened on the drawer container.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-drawer',\n exportAs: 'matDrawer',\n template: '<ng-content></ng-content>',\n animations: [matDrawerAnimations.transformDrawer],\n host: {\n 'class': 'mat-drawer',\n '[@transform]': '_animationState',\n '(@transform.start)': '_onAnimationStart($event)',\n '(@transform.done)': '_onAnimationEnd($event)',\n // must prevent the browser from aligning text based on value\n '[attr.align]': 'null',\n '[class.mat-drawer-end]': 'position === \"end\"',\n '[class.mat-drawer-over]': 'mode === \"over\"',\n '[class.mat-drawer-push]': 'mode === \"push\"',\n '[class.mat-drawer-side]': 'mode === \"side\"',\n 'tabIndex': '-1',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatDrawer implements AfterContentInit, AfterContentChecked, OnDestroy {\n private _focusTrap: FocusTrap;\n private _elementFocusedBeforeDrawerWasOpened: HTMLElement | null = null;\n\n /** Whether the drawer is initialized. Used for disabling the initial animation. */\n private _enableAnimations = false;\n\n /** The side that the drawer is attached to. */\n @Input()\n get position(): 'start' | 'end' { return this._position; }\n set position(value: 'start' | 'end') {\n // Make sure we have a valid value.\n value = value === 'end' ? 'end' : 'start';\n if (value != this._position) {\n this._position = value;\n this.onPositionChanged.emit();\n }\n }\n private _position: 'start' | 'end' = 'start';\n\n /** Mode of the drawer; one of 'over', 'push' or 'side'. */\n @Input()\n get mode(): 'over' | 'push' | 'side' { return this._mode; }\n set mode(value: 'over' | 'push' | 'side') {\n this._mode = value;\n this._modeChanged.next();\n }\n private _mode: 'over' | 'push' | 'side' = 'over';\n\n /** Whether the drawer can be closed with the escape key or by clicking on the backdrop. */\n @Input()\n get disableClose(): boolean { return this._disableClose; }\n set disableClose(value: boolean) { this._disableClose = coerceBooleanProperty(value); }\n private _disableClose: boolean = false;\n\n /** Whether the drawer should focus the first focusable element automatically when opened. */\n @Input()\n get autoFocus(): boolean { return this._autoFocus; }\n set autoFocus(value: boolean) { this._autoFocus = coerceBooleanProperty(value); }\n private _autoFocus: boolean = true;\n\n /** How the sidenav was opened (keypress, mouse click etc.) */\n private _openedVia: FocusOrigin | null;\n\n /** Emits whenever the drawer has started animating. */\n _animationStarted = new EventEmitter<AnimationEvent>();\n\n /** Current state of the sidenav animation. */\n _animationState: 'open-instant' | 'open' | 'void' = 'void';\n\n /** Event emitted when the drawer open state is changed. */\n @Output() readonly openedChange: EventEmitter<boolean> =\n // Note this has to be async in order to avoid some issues with two-bindings (see #8872).\n new EventEmitter<boolean>(/* isAsync */true);\n\n /** Event emitted when the drawer has been opened. */\n @Output('opened')\n get _openedStream(): Observable<void> {\n return this.openedChange.pipe(filter(o => o), map(() => {}));\n }\n\n /** Event emitted when the drawer has started opening. */\n @Output()\n get openedStart(): Observable<void> {\n return this._animationStarted.pipe(\n filter(e => e.fromState !== e.toState && e.toState.indexOf('open') === 0),\n map(() => {})\n );\n }\n\n /** Event emitted when the drawer has been closed. */\n @Output('closed')\n get _closedStream(): Observable<void> {\n return this.openedChange.pipe(filter(o => !o), map(() => {}));\n }\n\n /** Event emitted when the drawer has started closing. */\n @Output()\n get closedStart(): Observable<void> {\n return this._animationStarted.pipe(\n filter(e => e.fromState !== e.toState && e.toState === 'void'),\n map(() => {})\n );\n }\n\n /** Event emitted when the drawer's position changes. */\n // tslint:disable-next-line:no-output-on-prefix\n @Output('positionChanged') onPositionChanged: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * An observable that emits when the drawer mode changes. This is used by the drawer container to\n * to know when to when the mode changes so it can adapt the margins on the content.\n */\n readonly _modeChanged = new Subject();\n\n get _isFocusTrapEnabled(): boolean {\n // The focus trap is only enabled when the drawer is open in any mode other than side.\n return this.opened && this.mode !== 'side';\n }\n\n constructor(private _elementRef: ElementRef,\n private _focusTrapFactory: FocusTrapFactory,\n private _focusMonitor: FocusMonitor,\n private _platform: Platform,\n private _ngZone: NgZone,\n @Optional() @Inject(DOCUMENT) private _doc: any) {\n\n this.openedChange.subscribe((opened: boolean) => {\n if (opened) {\n if (this._doc) {\n this._elementFocusedBeforeDrawerWasOpened = this._doc.activeElement as HTMLElement;\n }\n\n if (this._isFocusTrapEnabled && this._focusTrap) {\n this._trapFocus();\n }\n } else {\n this._restoreFocus();\n }\n });\n\n /**\n * Listen to `keydown` events outside the zone so that change detection is not run every\n * time a key is pressed. Instead we re-enter the zone only if the `ESC` key is pressed\n * and we don't have close disabled.\n */\n this._ngZone.runOutsideAngular(() => {\n fromEvent(this._elementRef.nativeElement, 'keydown').pipe(\n filter((event: KeyboardEvent) => event.keyCode === ESCAPE && !this.disableClose)\n ).subscribe((event) => this._ngZone.run(() => {\n this.close();\n event.stopPropagation();\n }));\n });\n }\n\n /** Traps focus inside the drawer. */\n private _trapFocus() {\n if (!this.autoFocus) {\n return;\n }\n\n this._focusTrap.focusInitialElementWhenReady().then(hasMovedFocus => {\n // If there were no focusable elements, focus the sidenav itself so the keyboard navigation\n // still works. We need to check that `focus` is a function due to Universal.\n if (!hasMovedFocus && typeof this._elementRef.nativeElement.focus === 'function') {\n this._elementRef.nativeElement.focus();\n }\n });\n }\n\n /**\n * If focus is currently inside the drawer, restores it to where it was before the drawer\n * opened.\n */\n private _restoreFocus() {\n if (!this.autoFocus) {\n return;\n }\n\n const activeEl = this._doc && this._doc.activeElement;\n\n if (activeEl && this._elementRef.nativeElement.contains(activeEl)) {\n if (this._elementFocusedBeforeDrawerWasOpened instanceof HTMLElement) {\n this._focusMonitor.focusVia(this._elementFocusedBeforeDrawerWasOpened, this._openedVia);\n } else {\n this._elementRef.nativeElement.blur();\n }\n }\n\n this._elementFocusedBeforeDrawerWasOpened = null;\n this._openedVia = null;\n }\n\n ngAfterContentInit() {\n this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);\n this._focusTrap.enabled = this._isFocusTrapEnabled;\n }\n\n ngAfterContentChecked() {\n // Enable the animations after the lifecycle hooks have run, in order to avoid animating\n // drawers that are open by default. When we're on the server, we shouldn't enable the\n // animations, because we don't want the drawer to animate the first time the user sees\n // the page.\n if (this._platform.isBrowser) {\n this._enableAnimations = true;\n }\n }\n\n ngOnDestroy() {\n if (this._focusTrap) {\n this._focusTrap.destroy();\n }\n }\n\n /**\n * Whether the drawer is opened. We overload this because we trigger an event when it\n * starts or end.\n */\n @Input()\n get opened(): boolean { return this._opened; }\n set opened(value: boolean) { this.toggle(coerceBooleanProperty(value)); }\n private _opened: boolean = false;\n\n /**\n * Open the drawer.\n * @param openedVia Whether the drawer was opened by a key press, mouse click or programmatically.\n * Used for focus management after the sidenav is closed.\n */\n open(openedVia?: FocusOrigin): Promise<MatDrawerToggleResult> {\n return this.toggle(true, openedVia);\n }\n\n /** Close the drawer. */\n close(): Promise<MatDrawerToggleResult> {\n return this.toggle(false);\n }\n\n /**\n * Toggle this drawer.\n * @param isOpen Whether the drawer should be open.\n * @param openedVia Whether the drawer was opened by a key press, mouse click or programmatically.\n * Used for focus management after the sidenav is closed.\n */\n toggle(isOpen: boolean = !this.opened, openedVia: FocusOrigin = 'program'):\n Promise<MatDrawerToggleResult> {\n\n this._opened = isOpen;\n\n if (isOpen) {\n this._animationState = this._enableAnimations ? 'open' : 'open-instant';\n this._openedVia = openedVia;\n } else {\n this._animationState = 'void';\n this._restoreFocus();\n }\n\n if (this._focusTrap) {\n this._focusTrap.enabled = this._isFocusTrapEnabled;\n }\n\n return new Promise<MatDrawerToggleResult>(resolve => {\n this.openedChange.pipe(take(1)).subscribe(open => resolve(open ? 'open' : 'close'));\n });\n }\n\n _onAnimationStart(event: AnimationEvent) {\n this._animationStarted.emit(event);\n }\n\n _onAnimationEnd(event: AnimationEvent) {\n const {fromState, toState} = event;\n\n if ((toState.indexOf('open') === 0 && fromState === 'void') ||\n (toState === 'void' && fromState.indexOf('open') === 0)) {\n this.openedChange.emit(this._opened);\n }\n }\n\n get _width(): number {\n return this._elementRef.nativeElement ? (this._elementRef.nativeElement.offsetWidth || 0) : 0;\n }\n}\n\n\n/**\n * `<mat-drawer-container>` component.\n *\n * This is the parent component to one or two `<mat-drawer>`s that validates the state internally\n * and coordinates the backdrop and content styling.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-drawer-container',\n exportAs: 'matDrawerContainer',\n templateUrl: 'drawer-container.html',\n styleUrls: ['drawer.css'],\n host: {\n 'class': 'mat-drawer-container',\n '[class.mat-drawer-container-explicit-backdrop]': '_backdropOverride',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatDrawerContainer implements AfterContentInit, DoCheck, OnDestroy {\n @ContentChildren(MatDrawer) _drawers: QueryList<MatDrawer>;\n @ContentChild(MatDrawerContent) _content: MatDrawerContent;\n\n /** The drawer child with the `start` position. */\n get start(): MatDrawer | null { return this._start; }\n\n /** The drawer child with the `end` position. */\n get end(): MatDrawer | null { return this._end; }\n\n /**\n * Whether to automatically resize the container whenever\n * the size of any of its drawers changes.\n *\n * **Use at your own risk!** Enabling this option can cause layout thrashing by measuring\n * the drawers on every change detection cycle. Can be configured globally via the\n * `MAT_DRAWER_DEFAULT_AUTOSIZE` token.\n */\n @Input()\n get autosize(): boolean { return this._autosize; }\n set autosize(value: boolean) { this._autosize = coerceBooleanProperty(value); }\n private _autosize: boolean;\n\n /**\n * Whether the drawer container should have a backdrop while one of the sidenavs is open.\n * If explicitly set to `true`, the backdrop will be enabled for drawers in the `side`\n * mode as well.\n */\n @Input()\n get hasBackdrop() {\n if (this._backdropOverride == null) {\n return !this._start || this._start.mode !== 'side' || !this._end || this._end.mode !== 'side';\n }\n\n return this._backdropOverride;\n }\n set hasBackdrop(value: any) {\n this._backdropOverride = value == null ? null : coerceBooleanProperty(value);\n }\n _backdropOverride: boolean | null;\n\n /** Event emitted when the drawer backdrop is clicked. */\n @Output() readonly backdropClick: EventEmitter<void> = new EventEmitter<void>();\n\n /** The drawer at the start/end position, independent of direction. */\n private _start: MatDrawer | null;\n private _end: MatDrawer | null;\n\n /**\n * The drawer at the left/right. When direction changes, these will change as well.\n * They're used as aliases for the above to set the left/right style properly.\n * In LTR, _left == _start and _right == _end.\n * In RTL, _left == _end and _right == _start.\n */\n private _left: MatDrawer | null;\n private _right: MatDrawer | null;\n\n /** Emits when the component is destroyed. */\n private readonly _destroyed = new Subject<void>();\n\n /** Emits on every ngDoCheck. Used for debouncing reflows. */\n private readonly _doCheckSubject = new Subject<void>();\n\n /**\n * Margins to be applied to the content. These are used to push / shrink the drawer content when a\n * drawer is open. We use margin rather than transform even for push mode because transform breaks\n * fixed position elements inside of the transformed element.\n */\n _contentMargins: {left: number|null, right: number|null} = {left: null, right: null};\n\n readonly _contentMarginChanges = new Subject<{left: number|null, right: number|null}>();\n\n /** Reference to the CdkScrollable instance that wraps the scrollable content. */\n @ViewChild(CdkScrollable) scrollable: CdkScrollable;\n\n constructor(@Optional() private _dir: Directionality,\n private _element: ElementRef,\n private _ngZone: NgZone,\n private _changeDetectorRef: ChangeDetectorRef,\n @Inject(MAT_DRAWER_DEFAULT_AUTOSIZE) defaultAutosize = false,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) private _animationMode?: string) {\n\n // If a `Dir` directive exists up the tree, listen direction changes\n // and update the left/right properties to point to the proper start/end.\n if (_dir) {\n _dir.change.pipe(takeUntil(this._destroyed)).subscribe(() => {\n this._validateDrawers();\n this._updateContentMargins();\n });\n }\n\n this._autosize = defaultAutosize;\n }\n\n ngAfterContentInit() {\n this._drawers.changes.pipe(startWith(null)).subscribe(() => {\n this._validateDrawers();\n\n this._drawers.forEach((drawer: MatDrawer) => {\n this._watchDrawerToggle(drawer);\n this._watchDrawerPosition(drawer);\n this._watchDrawerMode(drawer);\n });\n\n if (!this._drawers.length ||\n this._isDrawerOpen(this._start) ||\n this._isDrawerOpen(this._end)) {\n this._updateContentMargins();\n }\n\n this._changeDetectorRef.markForCheck();\n });\n\n this._doCheckSubject.pipe(\n debounceTime(10), // Arbitrary debounce time, less than a frame at 60fps\n takeUntil(this._destroyed)\n ).subscribe(() => this._updateContentMargins());\n }\n\n ngOnDestroy() {\n this._doCheckSubject.complete();\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n /** Calls `open` of both start and end drawers */\n open(): void {\n this._drawers.forEach(drawer => drawer.open());\n }\n\n /** Calls `close` of both start and end drawers */\n close(): void {\n this._drawers.forEach(drawer => drawer.close());\n }\n\n ngDoCheck() {\n // If users opted into autosizing, do a check every change detection cycle.\n if (this._autosize && this._isPushed()) {\n // Run outside the NgZone, otherwise the debouncer will throw us into an infinite loop.\n this._ngZone.runOutsideAngular(() => this._doCheckSubject.next());\n }\n }\n\n /**\n * Subscribes to drawer events in order to set a class on the main container element when the\n * drawer is open and the backdrop is visible. This ensures any overflow on the container element\n * is properly hidden.\n */\n private _watchDrawerToggle(drawer: MatDrawer): void {\n drawer._animationStarted.pipe(\n takeUntil(this._drawers.changes),\n filter((event: AnimationEvent) => event.fromState !== event.toState)\n )\n .subscribe((event: AnimationEvent) => {\n // Set the transition class on the container so that the animations occur. This should not\n // be set initially because animations should only be triggered via a change in state.\n if (event.toState !== 'open-instant' && this._animationMode !== 'NoopAnimations') {\n this._element.nativeElement.classList.add('mat-drawer-transition');\n }\n\n this._updateContentMargins();\n this._changeDetectorRef.markForCheck();\n });\n\n if (drawer.mode !== 'side') {\n drawer.openedChange.pipe(takeUntil(this._drawers.changes)).subscribe(() =>\n this._setContainerClass(drawer.opened));\n }\n }\n\n /**\n * Subscribes to drawer onPositionChanged event in order to\n * re-validate drawers when the position changes.\n */\n private _watchDrawerPosition(drawer: MatDrawer): void {\n if (!drawer) {\n return;\n }\n // NOTE: We need to wait for the microtask queue to be empty before validating,\n // since both drawers may be swapping positions at the same time.\n drawer.onPositionChanged.pipe(takeUntil(this._drawers.changes)).subscribe(() => {\n this._ngZone.onMicrotaskEmpty.asObservable().pipe(take(1)).subscribe(() => {\n this._validateDrawers();\n });\n });\n }\n\n /** Subscribes to changes in drawer mode so we can run change detection. */\n private _watchDrawerMode(drawer: MatDrawer): void {\n if (drawer) {\n drawer._modeChanged.pipe(takeUntil(merge(this._drawers.changes, this._destroyed)))\n .subscribe(() => {\n this._updateContentMargins();\n this._changeDetectorRef.markForCheck();\n });\n }\n }\n\n /** Toggles the 'mat-drawer-opened' class on the main 'mat-drawer-container' element. */\n private _setContainerClass(isAdd: boolean): void {\n if (isAdd) {\n this._element.nativeElement.classList.add('mat-drawer-opened');\n } else {\n this._element.nativeElement.classList.remove('mat-drawer-opened');\n }\n }\n\n /** Validate the state of the drawer children components. */\n private _validateDrawers() {\n this._start = this._end = null;\n\n // Ensure that we have at most one start and one end drawer.\n this._drawers.forEach(drawer => {\n if (drawer.position == 'end') {\n if (this._end != null) {\n throwMatDuplicatedDrawerError('end');\n }\n this._end = drawer;\n } else {\n if (this._start != null) {\n throwMatDuplicatedDrawerError('start');\n }\n this._start = drawer;\n }\n });\n\n this._right = this._left = null;\n\n // Detect if we're LTR or RTL.\n if (this._dir && this._dir.value === 'rtl') {\n this._left = this._end;\n this._right = this._start;\n } else {\n this._left = this._start;\n this._right = this._end;\n }\n }\n\n /** Whether the container is being pushed to the side by one of the drawers. */\n private _isPushed() {\n return (this._isDrawerOpen(this._start) && this._start.mode != 'over') ||\n (this._isDrawerOpen(this._end) && this._end.mode != 'over');\n }\n\n _onBackdropClicked() {\n this.backdropClick.emit();\n this._closeModalDrawer();\n }\n\n _closeModalDrawer() {\n // Close all open drawers where closing is not disabled and the mode is not `side`.\n [this._start, this._end]\n .filter(drawer => drawer && !drawer.disableClose && this._canHaveBackdrop(drawer))\n .forEach(drawer => drawer!.close());\n }\n\n _isShowingBackdrop(): boolean {\n return (this._isDrawerOpen(this._start) && this._canHaveBackdrop(this._start)) ||\n (this._isDrawerOpen(this._end) && this._canHaveBackdrop(this._end));\n }\n\n private _canHaveBackdrop(drawer: MatDrawer): boolean {\n return drawer.mode !== 'side' || !!this._backdropOverride;\n }\n\n private _isDrawerOpen(drawer: MatDrawer | null): drawer is MatDrawer {\n return drawer != null && drawer.opened;\n }\n\n /**\n * Recalculates and updates the inline styles for the content. Note that this should be used\n * sparingly, because it causes a reflow.\n */\n private _updateContentMargins() {\n // 1. For drawers in `over` mode, they don't affect the content.\n // 2. For drawers in `side` mode they should shrink the content. We do this by adding to the\n // left margin (for left drawer) or right margin (for right the drawer).\n // 3. For drawers in `push` mode the should shift the content without resizing it. We do this by\n // adding to the left or right margin and simultaneously subtracting the same amount of\n // margin from the other side.\n\n let left = 0;\n let right = 0;\n\n if (this._left && this._left.opened) {\n if (this._left.mode == 'side') {\n left += this._left._width;\n } else if (this._left.mode == 'push') {\n let width = this._left._width;\n left += width;\n right -= width;\n }\n }\n\n if (this._right && this._right.opened) {\n if (this._right.mode == 'side') {\n right += this._right._width;\n } else if (this._right.mode == 'push') {\n let width = this._right._width;\n right += width;\n left -= width;\n }\n }\n\n // If either `right` or `left` is zero, don't set a style to the element. This\n // allows users to specify a custom size via CSS class in SSR scenarios where the\n // measured widths will always be zero. Note that we reset to `null` here, rather\n // than below, in order to ensure that the types in the `if` below are consistent.\n left = left || null!;\n right = right || null!;\n\n if (left !== this._contentMargins.left || right !== this._contentMargins.right) {\n this._contentMargins = {left, right};\n\n // Pull back into the NgZone since in some cases we could be outside. We need to be careful\n // to do it only when something changed, otherwise we can end up hitting the zone too often.\n this._ngZone.run(() => this._contentMarginChanges.next(this._contentMargins));\n }\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 */\nimport {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\n/** Animations used by the Material drawers. */\nexport const matDrawerAnimations: {\n readonly transformDrawer: AnimationTriggerMetadata;\n} = {\n /** Animation that slides a drawer in and out. */\n transformDrawer: trigger('transform', [\n state('open, open-instant', style({\n 'transform': 'translate3d(0, 0, 0)',\n 'visibility': 'visible',\n })),\n state('void', style({\n // Avoids the shadow showing up when closed in SSR.\n 'box-shadow': 'none',\n 'visibility': 'hidden',\n })),\n transition('void => open-instant', animate('0ms')),\n transition('void <=> open, open-instant => void',\n animate('400ms cubic-bezier(0.25, 0.8, 0.25, 1)'))\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 {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n forwardRef,\n Inject,\n Input,\n ViewEncapsulation,\n QueryList,\n} from '@angular/core';\nimport {MatDrawer, MatDrawerContainer, MatDrawerContent} from './drawer';\nimport {matDrawerAnimations} from './drawer-animations';\nimport {coerceBooleanProperty, coerceNumberProperty} from '@angular/cdk/coercion';\n\n\n@Component({\n moduleId: module.id,\n selector: 'mat-sidenav-content',\n template: '<ng-content></ng-content>',\n host: {\n 'class': 'mat-drawer-content mat-sidenav-content',\n '[style.margin-left.px]': '_container._contentMargins.left',\n '[style.margin-right.px]': '_container._contentMargins.right',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatSidenavContent extends MatDrawerContent {\n constructor(\n changeDetectorRef: ChangeDetectorRef,\n @Inject(forwardRef(() => MatSidenavContainer)) container: MatSidenavContainer) {\n super(changeDetectorRef, container);\n }\n}\n\n\n@Component({\n moduleId: module.id,\n selector: 'mat-sidenav',\n exportAs: 'matSidenav',\n template: '<ng-content></ng-content>',\n animations: [matDrawerAnimations.transformDrawer],\n host: {\n 'class': 'mat-drawer mat-sidenav',\n 'tabIndex': '-1',\n '[@transform]': '_animationState',\n '(@transform.start)': '_onAnimationStart($event)',\n '(@transform.done)': '_onAnimationEnd($event)',\n // must prevent the browser from aligning text based on value\n '[attr.align]': 'null',\n '[class.mat-drawer-end]': 'position === \"end\"',\n '[class.mat-drawer-over]': 'mode === \"over\"',\n '[class.mat-drawer-push]': 'mode === \"push\"',\n '[class.mat-drawer-side]': 'mode === \"side\"',\n '[class.mat-sidenav-fixed]': 'fixedInViewport',\n '[style.top.px]': 'fixedInViewport ? fixedTopGap : null',\n '[style.bottom.px]': 'fixedInViewport ? fixedBottomGap : null',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatSidenav extends MatDrawer {\n /** Whether the sidenav is fixed in the viewport. */\n @Input()\n get fixedInViewport(): boolean { return this._fixedInViewport; }\n set fixedInViewport(value) { this._fixedInViewport = coerceBooleanProperty(value); }\n private _fixedInViewport = false;\n\n /**\n * The gap between the top of the sidenav and the top of the viewport when the sidenav is in fixed\n * mode.\n */\n @Input()\n get fixedTopGap(): number { return this._fixedTopGap; }\n set fixedTopGap(value) { this._fixedTopGap = coerceNumberProperty(value); }\n private _fixedTopGap = 0;\n\n /**\n * The gap between the bottom of the sidenav and the bottom of the viewport when the sidenav is in\n * fixed mode.\n */\n @Input()\n get fixedBottomGap(): number { return this._fixedBottomGap; }\n set fixedBottomGap(value) { this._fixedBottomGap = coerceNumberProperty(value); }\n private _fixedBottomGap = 0;\n}\n\n\n@Component({\n moduleId: module.id,\n selector: 'mat-sidenav-container',\n exportAs: 'matSidenavContainer',\n templateUrl: 'sidenav-container.html',\n styleUrls: ['drawer.css'],\n host: {\n 'class': 'mat-drawer-container mat-sidenav-container',\n '[class.mat-drawer-container-explicit-backdrop]': '_backdropOverride',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatSidenavContainer extends MatDrawerContainer {\n @ContentChildren(MatSidenav) _drawers: QueryList<MatSidenav>;\n @ContentChild(MatSidenavContent) _content: MatSidenavContent;\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 {PlatformModule} from '@angular/cdk/platform';\nimport {ScrollDispatchModule} from '@angular/cdk/scrolling';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatDrawer, MatDrawerContainer, MatDrawerContent} from './drawer';\nimport {MatSidenav, MatSidenavContainer, MatSidenavContent} from './sidenav';\n\n\n@NgModule({\n imports: [\n CommonModule,\n MatCommonModule,\n ScrollDispatchModule,\n PlatformModule,\n ],\n exports: [\n MatCommonModule,\n MatDrawer,\n MatDrawerContainer,\n MatDrawerContent,\n MatSidenav,\n MatSidenavContainer,\n MatSidenavContent,\n ],\n declarations: [\n MatDrawer,\n MatDrawerContainer,\n MatDrawerContent,\n MatSidenav,\n MatSidenavContainer,\n MatSidenavContent,\n ],\n})\nexport class MatSidenavModule {}\n"],"names":["__extends","d","b","__","this","constructor","extendStatics","prototype","Object","create","throwMatDuplicatedDrawerError","position","Error","MAT_DRAWER_DEFAULT_AUTOSIZE_FACTORY","setPrototypeOf","__proto__","Array","p","hasOwnProperty","matDrawerAnimations","transformDrawer","trigger","state","style","transform","visibility","box-shadow","transition","animate","MAT_DRAWER_DEFAULT_AUTOSIZE","InjectionToken","providedIn","factory","MatDrawerContent","_changeDetectorRef","_container","ngAfterContentInit","_this","_contentMarginChanges","subscribe","markForCheck","type","Component","args","selector","template","host","class","[style.margin-left.px]","[style.margin-right.px]","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","_elementRef","_focusTrapFactory","_focusMonitor","_platform","_ngZone","_doc","_elementFocusedBeforeDrawerWasOpened","_mode","_disableClose","_autoFocus","openedChange","opened","_isFocusTrapEnabled","_focusTrap","_trapFocus","_restoreFocus","run","close","event","stopPropagation","defineProperty","MatDrawer","get","value","_position","onPositionChanged","emit","enumerable","configurable","_modeChanged","next","mode","focusInitialElementWhenReady","then","hasMovedFocus","activeEl","activeElement","nativeElement","contains","HTMLElement","focusVia","_openedVia","blur","enabled","destroy","isOpen","openedVia","_opened","_animationState","_enableAnimations","Promise","resolve","pipe","take","open","toState","indexOf","fromState","animations","[@transform]","(@transform.start)","(@transform.done)","[attr.align]","[class.mat-drawer-end]","[class.mat-drawer-over]","[class.mat-drawer-side]","tabIndex","ctorParameters","ElementRef","NgZone","undefined","decorators","Optional","Inject","DOCUMENT","propDecorators","Input","Output","_openedStream","openedStart","_closedStream","closedStart","_element","_animationMode","backdropClick","EventEmitter","_destroyed","Subject","_doCheckSubject","_dir","change","takeUntil","_autosize","defaultAutosize","MatDrawerContainer","set","_drawers","forEach","drawer","_watchDrawerToggle","_watchDrawerPosition","_watchDrawerMode","length","_isDrawerOpen","_start","_end","_updateContentMargins","debounceTime","ngOnDestroy","complete","ngDoCheck","runOutsideAngular","classList","add","changes","_setContainerClass","onMicrotaskEmpty","asObservable","remove","_right","_left","_closeModalDrawer","filter","disableClose","_canHaveBackdrop","_isShowingBackdrop","left","_width","width","right","_contentMargins","exportAs","[class.mat-drawer-container-explicit-backdrop]","Directionality","ContentChildren","_content","ContentChild","autosize","hasBackdrop","MatSidenavContent","changeDetectorRef","container","_super","call","tslib_1.__extends","MatSidenav","apply","arguments","_fixedBottomGap","[class.mat-sidenav-fixed]","[style.top.px]","[style.bottom.px]","fixedInViewport","MatSidenavContainer","MatSidenavModule","NgModule","imports","CommonModule","MatCommonModule","ScrollDispatchModule","PlatformModule","exports","declarations"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"material-sidenav.umd.min.js","sources":["../../node_modules/tslib/tslib.es6.js","../../src/lib/sidenav/drawer.ts","../../src/lib/sidenav/drawer-animations.ts","../../src/lib/sidenav/sidenav.ts","../../src/lib/sidenav/sidenav-module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\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 {FocusMonitor, FocusOrigin, FocusTrap, FocusTrapFactory} from '@angular/cdk/a11y';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {ESCAPE} from '@angular/cdk/keycodes';\nimport {Platform} from '@angular/cdk/platform';\nimport {CdkScrollable} from '@angular/cdk/scrolling';\nimport {DOCUMENT} from '@angular/common';\nimport {\n AfterContentChecked,\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n DoCheck,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n InjectionToken,\n Input,\n NgZone,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport {fromEvent, merge, Observable, Subject} from 'rxjs';\nimport {debounceTime, filter, map, startWith, take, takeUntil} from 'rxjs/operators';\nimport {matDrawerAnimations} from './drawer-animations';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\n\n\n/** Throws an exception when two MatDrawer are matching the same position. */\nexport function throwMatDuplicatedDrawerError(position: string) {\n throw Error(`A drawer was already declared for 'position=\"${position}\"'`);\n}\n\n\n/** Result of the toggle promise that indicates the state of the drawer. */\nexport type MatDrawerToggleResult = 'open' | 'close';\n\n/** Configures whether drawers should use auto sizing by default. */\nexport const MAT_DRAWER_DEFAULT_AUTOSIZE =\n new InjectionToken<boolean>('MAT_DRAWER_DEFAULT_AUTOSIZE', {\n providedIn: 'root',\n factory: MAT_DRAWER_DEFAULT_AUTOSIZE_FACTORY,\n });\n\n/** @docs-private */\nexport function MAT_DRAWER_DEFAULT_AUTOSIZE_FACTORY(): boolean {\n return false;\n}\n\n@Component({\n moduleId: module.id,\n selector: 'mat-drawer-content',\n template: '<ng-content></ng-content>',\n host: {\n 'class': 'mat-drawer-content',\n '[style.margin-left.px]': '_container._contentMargins.left',\n '[style.margin-right.px]': '_container._contentMargins.right',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatDrawerContent implements AfterContentInit {\n constructor(\n private _changeDetectorRef: ChangeDetectorRef,\n @Inject(forwardRef(() => MatDrawerContainer)) public _container: MatDrawerContainer) {\n }\n\n ngAfterContentInit() {\n this._container._contentMarginChanges.subscribe(() => {\n this._changeDetectorRef.markForCheck();\n });\n }\n}\n\n\n/**\n * This component corresponds to a drawer that can be opened on the drawer container.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-drawer',\n exportAs: 'matDrawer',\n template: '<ng-content></ng-content>',\n animations: [matDrawerAnimations.transformDrawer],\n host: {\n 'class': 'mat-drawer',\n '[@transform]': '_animationState',\n '(@transform.start)': '_onAnimationStart($event)',\n '(@transform.done)': '_onAnimationEnd($event)',\n // must prevent the browser from aligning text based on value\n '[attr.align]': 'null',\n '[class.mat-drawer-end]': 'position === \"end\"',\n '[class.mat-drawer-over]': 'mode === \"over\"',\n '[class.mat-drawer-push]': 'mode === \"push\"',\n '[class.mat-drawer-side]': 'mode === \"side\"',\n 'tabIndex': '-1',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatDrawer implements AfterContentInit, AfterContentChecked, OnDestroy {\n private _focusTrap: FocusTrap;\n private _elementFocusedBeforeDrawerWasOpened: HTMLElement | null = null;\n\n /** Whether the drawer is initialized. Used for disabling the initial animation. */\n private _enableAnimations = false;\n\n /** The side that the drawer is attached to. */\n @Input()\n get position(): 'start' | 'end' { return this._position; }\n set position(value: 'start' | 'end') {\n // Make sure we have a valid value.\n value = value === 'end' ? 'end' : 'start';\n if (value != this._position) {\n this._position = value;\n this.onPositionChanged.emit();\n }\n }\n private _position: 'start' | 'end' = 'start';\n\n /** Mode of the drawer; one of 'over', 'push' or 'side'. */\n @Input()\n get mode(): 'over' | 'push' | 'side' { return this._mode; }\n set mode(value: 'over' | 'push' | 'side') {\n this._mode = value;\n this._modeChanged.next();\n }\n private _mode: 'over' | 'push' | 'side' = 'over';\n\n /** Whether the drawer can be closed with the escape key or by clicking on the backdrop. */\n @Input()\n get disableClose(): boolean { return this._disableClose; }\n set disableClose(value: boolean) { this._disableClose = coerceBooleanProperty(value); }\n private _disableClose: boolean = false;\n\n /** Whether the drawer should focus the first focusable element automatically when opened. */\n @Input()\n get autoFocus(): boolean { return this._autoFocus; }\n set autoFocus(value: boolean) { this._autoFocus = coerceBooleanProperty(value); }\n private _autoFocus: boolean = true;\n\n /** How the sidenav was opened (keypress, mouse click etc.) */\n private _openedVia: FocusOrigin | null;\n\n /** Emits whenever the drawer has started animating. */\n _animationStarted = new EventEmitter<AnimationEvent>();\n\n /** Current state of the sidenav animation. */\n _animationState: 'open-instant' | 'open' | 'void' = 'void';\n\n /** Event emitted when the drawer open state is changed. */\n @Output() readonly openedChange: EventEmitter<boolean> =\n // Note this has to be async in order to avoid some issues with two-bindings (see #8872).\n new EventEmitter<boolean>(/* isAsync */true);\n\n /** Event emitted when the drawer has been opened. */\n @Output('opened')\n get _openedStream(): Observable<void> {\n return this.openedChange.pipe(filter(o => o), map(() => {}));\n }\n\n /** Event emitted when the drawer has started opening. */\n @Output()\n get openedStart(): Observable<void> {\n return this._animationStarted.pipe(\n filter(e => e.fromState !== e.toState && e.toState.indexOf('open') === 0),\n map(() => {})\n );\n }\n\n /** Event emitted when the drawer has been closed. */\n @Output('closed')\n get _closedStream(): Observable<void> {\n return this.openedChange.pipe(filter(o => !o), map(() => {}));\n }\n\n /** Event emitted when the drawer has started closing. */\n @Output()\n get closedStart(): Observable<void> {\n return this._animationStarted.pipe(\n filter(e => e.fromState !== e.toState && e.toState === 'void'),\n map(() => {})\n );\n }\n\n /** Event emitted when the drawer's position changes. */\n // tslint:disable-next-line:no-output-on-prefix\n @Output('positionChanged') onPositionChanged: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * An observable that emits when the drawer mode changes. This is used by the drawer container to\n * to know when to when the mode changes so it can adapt the margins on the content.\n */\n readonly _modeChanged = new Subject();\n\n get _isFocusTrapEnabled(): boolean {\n // The focus trap is only enabled when the drawer is open in any mode other than side.\n return this.opened && this.mode !== 'side';\n }\n\n constructor(private _elementRef: ElementRef<HTMLElement>,\n private _focusTrapFactory: FocusTrapFactory,\n private _focusMonitor: FocusMonitor,\n private _platform: Platform,\n private _ngZone: NgZone,\n @Optional() @Inject(DOCUMENT) private _doc: any) {\n\n this.openedChange.subscribe((opened: boolean) => {\n if (opened) {\n if (this._doc) {\n this._elementFocusedBeforeDrawerWasOpened = this._doc.activeElement as HTMLElement;\n }\n\n if (this._isFocusTrapEnabled && this._focusTrap) {\n this._trapFocus();\n }\n } else {\n this._restoreFocus();\n }\n });\n\n /**\n * Listen to `keydown` events outside the zone so that change detection is not run every\n * time a key is pressed. Instead we re-enter the zone only if the `ESC` key is pressed\n * and we don't have close disabled.\n */\n this._ngZone.runOutsideAngular(() => {\n fromEvent(this._elementRef.nativeElement, 'keydown').pipe(\n filter((event: KeyboardEvent) => event.keyCode === ESCAPE && !this.disableClose)\n ).subscribe((event) => this._ngZone.run(() => {\n this.close();\n event.stopPropagation();\n }));\n });\n }\n\n /** Traps focus inside the drawer. */\n private _trapFocus() {\n if (!this.autoFocus) {\n return;\n }\n\n this._focusTrap.focusInitialElementWhenReady().then(hasMovedFocus => {\n // If there were no focusable elements, focus the sidenav itself so the keyboard navigation\n // still works. We need to check that `focus` is a function due to Universal.\n if (!hasMovedFocus && typeof this._elementRef.nativeElement.focus === 'function') {\n this._elementRef.nativeElement.focus();\n }\n });\n }\n\n /**\n * If focus is currently inside the drawer, restores it to where it was before the drawer\n * opened.\n */\n private _restoreFocus() {\n if (!this.autoFocus) {\n return;\n }\n\n const activeEl = this._doc && this._doc.activeElement;\n\n if (activeEl && this._elementRef.nativeElement.contains(activeEl)) {\n if (this._elementFocusedBeforeDrawerWasOpened instanceof HTMLElement) {\n this._focusMonitor.focusVia(this._elementFocusedBeforeDrawerWasOpened, this._openedVia);\n } else {\n this._elementRef.nativeElement.blur();\n }\n }\n\n this._elementFocusedBeforeDrawerWasOpened = null;\n this._openedVia = null;\n }\n\n ngAfterContentInit() {\n this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);\n this._focusTrap.enabled = this._isFocusTrapEnabled;\n }\n\n ngAfterContentChecked() {\n // Enable the animations after the lifecycle hooks have run, in order to avoid animating\n // drawers that are open by default. When we're on the server, we shouldn't enable the\n // animations, because we don't want the drawer to animate the first time the user sees\n // the page.\n if (this._platform.isBrowser) {\n this._enableAnimations = true;\n }\n }\n\n ngOnDestroy() {\n if (this._focusTrap) {\n this._focusTrap.destroy();\n }\n }\n\n /**\n * Whether the drawer is opened. We overload this because we trigger an event when it\n * starts or end.\n */\n @Input()\n get opened(): boolean { return this._opened; }\n set opened(value: boolean) { this.toggle(coerceBooleanProperty(value)); }\n private _opened: boolean = false;\n\n /**\n * Open the drawer.\n * @param openedVia Whether the drawer was opened by a key press, mouse click or programmatically.\n * Used for focus management after the sidenav is closed.\n */\n open(openedVia?: FocusOrigin): Promise<MatDrawerToggleResult> {\n return this.toggle(true, openedVia);\n }\n\n /** Close the drawer. */\n close(): Promise<MatDrawerToggleResult> {\n return this.toggle(false);\n }\n\n /**\n * Toggle this drawer.\n * @param isOpen Whether the drawer should be open.\n * @param openedVia Whether the drawer was opened by a key press, mouse click or programmatically.\n * Used for focus management after the sidenav is closed.\n */\n toggle(isOpen: boolean = !this.opened, openedVia: FocusOrigin = 'program'):\n Promise<MatDrawerToggleResult> {\n\n this._opened = isOpen;\n\n if (isOpen) {\n this._animationState = this._enableAnimations ? 'open' : 'open-instant';\n this._openedVia = openedVia;\n } else {\n this._animationState = 'void';\n this._restoreFocus();\n }\n\n if (this._focusTrap) {\n this._focusTrap.enabled = this._isFocusTrapEnabled;\n }\n\n return new Promise<MatDrawerToggleResult>(resolve => {\n this.openedChange.pipe(take(1)).subscribe(open => resolve(open ? 'open' : 'close'));\n });\n }\n\n _onAnimationStart(event: AnimationEvent) {\n this._animationStarted.emit(event);\n }\n\n _onAnimationEnd(event: AnimationEvent) {\n const {fromState, toState} = event;\n\n if ((toState.indexOf('open') === 0 && fromState === 'void') ||\n (toState === 'void' && fromState.indexOf('open') === 0)) {\n this.openedChange.emit(this._opened);\n }\n }\n\n get _width(): number {\n return this._elementRef.nativeElement ? (this._elementRef.nativeElement.offsetWidth || 0) : 0;\n }\n}\n\n\n/**\n * `<mat-drawer-container>` component.\n *\n * This is the parent component to one or two `<mat-drawer>`s that validates the state internally\n * and coordinates the backdrop and content styling.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-drawer-container',\n exportAs: 'matDrawerContainer',\n templateUrl: 'drawer-container.html',\n styleUrls: ['drawer.css'],\n host: {\n 'class': 'mat-drawer-container',\n '[class.mat-drawer-container-explicit-backdrop]': '_backdropOverride',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatDrawerContainer implements AfterContentInit, DoCheck, OnDestroy {\n @ContentChildren(MatDrawer) _drawers: QueryList<MatDrawer>;\n @ContentChild(MatDrawerContent) _content: MatDrawerContent;\n\n /** The drawer child with the `start` position. */\n get start(): MatDrawer | null { return this._start; }\n\n /** The drawer child with the `end` position. */\n get end(): MatDrawer | null { return this._end; }\n\n /**\n * Whether to automatically resize the container whenever\n * the size of any of its drawers changes.\n *\n * **Use at your own risk!** Enabling this option can cause layout thrashing by measuring\n * the drawers on every change detection cycle. Can be configured globally via the\n * `MAT_DRAWER_DEFAULT_AUTOSIZE` token.\n */\n @Input()\n get autosize(): boolean { return this._autosize; }\n set autosize(value: boolean) { this._autosize = coerceBooleanProperty(value); }\n private _autosize: boolean;\n\n /**\n * Whether the drawer container should have a backdrop while one of the sidenavs is open.\n * If explicitly set to `true`, the backdrop will be enabled for drawers in the `side`\n * mode as well.\n */\n @Input()\n get hasBackdrop() {\n if (this._backdropOverride == null) {\n return !this._start || this._start.mode !== 'side' || !this._end || this._end.mode !== 'side';\n }\n\n return this._backdropOverride;\n }\n set hasBackdrop(value: any) {\n this._backdropOverride = value == null ? null : coerceBooleanProperty(value);\n }\n _backdropOverride: boolean | null;\n\n /** Event emitted when the drawer backdrop is clicked. */\n @Output() readonly backdropClick: EventEmitter<void> = new EventEmitter<void>();\n\n /** The drawer at the start/end position, independent of direction. */\n private _start: MatDrawer | null;\n private _end: MatDrawer | null;\n\n /**\n * The drawer at the left/right. When direction changes, these will change as well.\n * They're used as aliases for the above to set the left/right style properly.\n * In LTR, _left == _start and _right == _end.\n * In RTL, _left == _end and _right == _start.\n */\n private _left: MatDrawer | null;\n private _right: MatDrawer | null;\n\n /** Emits when the component is destroyed. */\n private readonly _destroyed = new Subject<void>();\n\n /** Emits on every ngDoCheck. Used for debouncing reflows. */\n private readonly _doCheckSubject = new Subject<void>();\n\n /**\n * Margins to be applied to the content. These are used to push / shrink the drawer content when a\n * drawer is open. We use margin rather than transform even for push mode because transform breaks\n * fixed position elements inside of the transformed element.\n */\n _contentMargins: {left: number|null, right: number|null} = {left: null, right: null};\n\n readonly _contentMarginChanges = new Subject<{left: number|null, right: number|null}>();\n\n /** Reference to the CdkScrollable instance that wraps the scrollable content. */\n @ViewChild(CdkScrollable) scrollable: CdkScrollable;\n\n constructor(@Optional() private _dir: Directionality,\n private _element: ElementRef<HTMLElement>,\n private _ngZone: NgZone,\n private _changeDetectorRef: ChangeDetectorRef,\n @Inject(MAT_DRAWER_DEFAULT_AUTOSIZE) defaultAutosize = false,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) private _animationMode?: string) {\n\n // If a `Dir` directive exists up the tree, listen direction changes\n // and update the left/right properties to point to the proper start/end.\n if (_dir) {\n _dir.change.pipe(takeUntil(this._destroyed)).subscribe(() => {\n this._validateDrawers();\n this._updateContentMargins();\n });\n }\n\n this._autosize = defaultAutosize;\n }\n\n ngAfterContentInit() {\n this._drawers.changes.pipe(startWith(null)).subscribe(() => {\n this._validateDrawers();\n\n this._drawers.forEach((drawer: MatDrawer) => {\n this._watchDrawerToggle(drawer);\n this._watchDrawerPosition(drawer);\n this._watchDrawerMode(drawer);\n });\n\n if (!this._drawers.length ||\n this._isDrawerOpen(this._start) ||\n this._isDrawerOpen(this._end)) {\n this._updateContentMargins();\n }\n\n this._changeDetectorRef.markForCheck();\n });\n\n this._doCheckSubject.pipe(\n debounceTime(10), // Arbitrary debounce time, less than a frame at 60fps\n takeUntil(this._destroyed)\n ).subscribe(() => this._updateContentMargins());\n }\n\n ngOnDestroy() {\n this._doCheckSubject.complete();\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n /** Calls `open` of both start and end drawers */\n open(): void {\n this._drawers.forEach(drawer => drawer.open());\n }\n\n /** Calls `close` of both start and end drawers */\n close(): void {\n this._drawers.forEach(drawer => drawer.close());\n }\n\n ngDoCheck() {\n // If users opted into autosizing, do a check every change detection cycle.\n if (this._autosize && this._isPushed()) {\n // Run outside the NgZone, otherwise the debouncer will throw us into an infinite loop.\n this._ngZone.runOutsideAngular(() => this._doCheckSubject.next());\n }\n }\n\n /**\n * Subscribes to drawer events in order to set a class on the main container element when the\n * drawer is open and the backdrop is visible. This ensures any overflow on the container element\n * is properly hidden.\n */\n private _watchDrawerToggle(drawer: MatDrawer): void {\n drawer._animationStarted.pipe(\n takeUntil(this._drawers.changes),\n filter((event: AnimationEvent) => event.fromState !== event.toState)\n )\n .subscribe((event: AnimationEvent) => {\n // Set the transition class on the container so that the animations occur. This should not\n // be set initially because animations should only be triggered via a change in state.\n if (event.toState !== 'open-instant' && this._animationMode !== 'NoopAnimations') {\n this._element.nativeElement.classList.add('mat-drawer-transition');\n }\n\n this._updateContentMargins();\n this._changeDetectorRef.markForCheck();\n });\n\n if (drawer.mode !== 'side') {\n drawer.openedChange.pipe(takeUntil(this._drawers.changes)).subscribe(() =>\n this._setContainerClass(drawer.opened));\n }\n }\n\n /**\n * Subscribes to drawer onPositionChanged event in order to\n * re-validate drawers when the position changes.\n */\n private _watchDrawerPosition(drawer: MatDrawer): void {\n if (!drawer) {\n return;\n }\n // NOTE: We need to wait for the microtask queue to be empty before validating,\n // since both drawers may be swapping positions at the same time.\n drawer.onPositionChanged.pipe(takeUntil(this._drawers.changes)).subscribe(() => {\n this._ngZone.onMicrotaskEmpty.asObservable().pipe(take(1)).subscribe(() => {\n this._validateDrawers();\n });\n });\n }\n\n /** Subscribes to changes in drawer mode so we can run change detection. */\n private _watchDrawerMode(drawer: MatDrawer): void {\n if (drawer) {\n drawer._modeChanged.pipe(takeUntil(merge(this._drawers.changes, this._destroyed)))\n .subscribe(() => {\n this._updateContentMargins();\n this._changeDetectorRef.markForCheck();\n });\n }\n }\n\n /** Toggles the 'mat-drawer-opened' class on the main 'mat-drawer-container' element. */\n private _setContainerClass(isAdd: boolean): void {\n if (isAdd) {\n this._element.nativeElement.classList.add('mat-drawer-opened');\n } else {\n this._element.nativeElement.classList.remove('mat-drawer-opened');\n }\n }\n\n /** Validate the state of the drawer children components. */\n private _validateDrawers() {\n this._start = this._end = null;\n\n // Ensure that we have at most one start and one end drawer.\n this._drawers.forEach(drawer => {\n if (drawer.position == 'end') {\n if (this._end != null) {\n throwMatDuplicatedDrawerError('end');\n }\n this._end = drawer;\n } else {\n if (this._start != null) {\n throwMatDuplicatedDrawerError('start');\n }\n this._start = drawer;\n }\n });\n\n this._right = this._left = null;\n\n // Detect if we're LTR or RTL.\n if (this._dir && this._dir.value === 'rtl') {\n this._left = this._end;\n this._right = this._start;\n } else {\n this._left = this._start;\n this._right = this._end;\n }\n }\n\n /** Whether the container is being pushed to the side by one of the drawers. */\n private _isPushed() {\n return (this._isDrawerOpen(this._start) && this._start.mode != 'over') ||\n (this._isDrawerOpen(this._end) && this._end.mode != 'over');\n }\n\n _onBackdropClicked() {\n this.backdropClick.emit();\n this._closeModalDrawer();\n }\n\n _closeModalDrawer() {\n // Close all open drawers where closing is not disabled and the mode is not `side`.\n [this._start, this._end]\n .filter(drawer => drawer && !drawer.disableClose && this._canHaveBackdrop(drawer))\n .forEach(drawer => drawer!.close());\n }\n\n _isShowingBackdrop(): boolean {\n return (this._isDrawerOpen(this._start) && this._canHaveBackdrop(this._start)) ||\n (this._isDrawerOpen(this._end) && this._canHaveBackdrop(this._end));\n }\n\n private _canHaveBackdrop(drawer: MatDrawer): boolean {\n return drawer.mode !== 'side' || !!this._backdropOverride;\n }\n\n private _isDrawerOpen(drawer: MatDrawer | null): drawer is MatDrawer {\n return drawer != null && drawer.opened;\n }\n\n /**\n * Recalculates and updates the inline styles for the content. Note that this should be used\n * sparingly, because it causes a reflow.\n */\n private _updateContentMargins() {\n // 1. For drawers in `over` mode, they don't affect the content.\n // 2. For drawers in `side` mode they should shrink the content. We do this by adding to the\n // left margin (for left drawer) or right margin (for right the drawer).\n // 3. For drawers in `push` mode the should shift the content without resizing it. We do this by\n // adding to the left or right margin and simultaneously subtracting the same amount of\n // margin from the other side.\n\n let left = 0;\n let right = 0;\n\n if (this._left && this._left.opened) {\n if (this._left.mode == 'side') {\n left += this._left._width;\n } else if (this._left.mode == 'push') {\n let width = this._left._width;\n left += width;\n right -= width;\n }\n }\n\n if (this._right && this._right.opened) {\n if (this._right.mode == 'side') {\n right += this._right._width;\n } else if (this._right.mode == 'push') {\n let width = this._right._width;\n right += width;\n left -= width;\n }\n }\n\n // If either `right` or `left` is zero, don't set a style to the element. This\n // allows users to specify a custom size via CSS class in SSR scenarios where the\n // measured widths will always be zero. Note that we reset to `null` here, rather\n // than below, in order to ensure that the types in the `if` below are consistent.\n left = left || null!;\n right = right || null!;\n\n if (left !== this._contentMargins.left || right !== this._contentMargins.right) {\n this._contentMargins = {left, right};\n\n // Pull back into the NgZone since in some cases we could be outside. We need to be careful\n // to do it only when something changed, otherwise we can end up hitting the zone too often.\n this._ngZone.run(() => this._contentMarginChanges.next(this._contentMargins));\n }\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 */\nimport {\n animate,\n state,\n style,\n transition,\n trigger,\n AnimationTriggerMetadata,\n} from '@angular/animations';\n\n/** Animations used by the Material drawers. */\nexport const matDrawerAnimations: {\n readonly transformDrawer: AnimationTriggerMetadata;\n} = {\n /** Animation that slides a drawer in and out. */\n transformDrawer: trigger('transform', [\n // We remove the `transform` here completely, rather than setting it to zero, because:\n // 1. Having a transform can cause elements with ripples or an animated\n // transform to shift around in Chrome with an RTL layout (see #10023).\n // 2. 3d transforms causes text to appear blurry on IE and Edge.\n state('open, open-instant', style({\n 'transform': 'none',\n 'visibility': 'visible',\n })),\n state('void', style({\n // Avoids the shadow showing up when closed in SSR.\n 'box-shadow': 'none',\n 'visibility': 'hidden',\n })),\n transition('void => open-instant', animate('0ms')),\n transition('void <=> open, open-instant => void',\n animate('400ms cubic-bezier(0.25, 0.8, 0.25, 1)'))\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 {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n forwardRef,\n Inject,\n Input,\n ViewEncapsulation,\n QueryList,\n} from '@angular/core';\nimport {MatDrawer, MatDrawerContainer, MatDrawerContent} from './drawer';\nimport {matDrawerAnimations} from './drawer-animations';\nimport {coerceBooleanProperty, coerceNumberProperty} from '@angular/cdk/coercion';\n\n\n@Component({\n moduleId: module.id,\n selector: 'mat-sidenav-content',\n template: '<ng-content></ng-content>',\n host: {\n 'class': 'mat-drawer-content mat-sidenav-content',\n '[style.margin-left.px]': '_container._contentMargins.left',\n '[style.margin-right.px]': '_container._contentMargins.right',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatSidenavContent extends MatDrawerContent {\n constructor(\n changeDetectorRef: ChangeDetectorRef,\n @Inject(forwardRef(() => MatSidenavContainer)) container: MatSidenavContainer) {\n super(changeDetectorRef, container);\n }\n}\n\n\n@Component({\n moduleId: module.id,\n selector: 'mat-sidenav',\n exportAs: 'matSidenav',\n template: '<ng-content></ng-content>',\n animations: [matDrawerAnimations.transformDrawer],\n host: {\n 'class': 'mat-drawer mat-sidenav',\n 'tabIndex': '-1',\n '[@transform]': '_animationState',\n '(@transform.start)': '_onAnimationStart($event)',\n '(@transform.done)': '_onAnimationEnd($event)',\n // must prevent the browser from aligning text based on value\n '[attr.align]': 'null',\n '[class.mat-drawer-end]': 'position === \"end\"',\n '[class.mat-drawer-over]': 'mode === \"over\"',\n '[class.mat-drawer-push]': 'mode === \"push\"',\n '[class.mat-drawer-side]': 'mode === \"side\"',\n '[class.mat-sidenav-fixed]': 'fixedInViewport',\n '[style.top.px]': 'fixedInViewport ? fixedTopGap : null',\n '[style.bottom.px]': 'fixedInViewport ? fixedBottomGap : null',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatSidenav extends MatDrawer {\n /** Whether the sidenav is fixed in the viewport. */\n @Input()\n get fixedInViewport(): boolean { return this._fixedInViewport; }\n set fixedInViewport(value) { this._fixedInViewport = coerceBooleanProperty(value); }\n private _fixedInViewport = false;\n\n /**\n * The gap between the top of the sidenav and the top of the viewport when the sidenav is in fixed\n * mode.\n */\n @Input()\n get fixedTopGap(): number { return this._fixedTopGap; }\n set fixedTopGap(value) { this._fixedTopGap = coerceNumberProperty(value); }\n private _fixedTopGap = 0;\n\n /**\n * The gap between the bottom of the sidenav and the bottom of the viewport when the sidenav is in\n * fixed mode.\n */\n @Input()\n get fixedBottomGap(): number { return this._fixedBottomGap; }\n set fixedBottomGap(value) { this._fixedBottomGap = coerceNumberProperty(value); }\n private _fixedBottomGap = 0;\n}\n\n\n@Component({\n moduleId: module.id,\n selector: 'mat-sidenav-container',\n exportAs: 'matSidenavContainer',\n templateUrl: 'sidenav-container.html',\n styleUrls: ['drawer.css'],\n host: {\n 'class': 'mat-drawer-container mat-sidenav-container',\n '[class.mat-drawer-container-explicit-backdrop]': '_backdropOverride',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatSidenavContainer extends MatDrawerContainer {\n @ContentChildren(MatSidenav) _drawers: QueryList<MatSidenav>;\n @ContentChild(MatSidenavContent) _content: MatSidenavContent;\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 {PlatformModule} from '@angular/cdk/platform';\nimport {ScrollDispatchModule} from '@angular/cdk/scrolling';\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatDrawer, MatDrawerContainer, MatDrawerContent} from './drawer';\nimport {MatSidenav, MatSidenavContainer, MatSidenavContent} from './sidenav';\n\n\n@NgModule({\n imports: [\n CommonModule,\n MatCommonModule,\n ScrollDispatchModule,\n PlatformModule,\n ],\n exports: [\n MatCommonModule,\n MatDrawer,\n MatDrawerContainer,\n MatDrawerContent,\n MatSidenav,\n MatSidenavContainer,\n MatSidenavContent,\n ],\n declarations: [\n MatDrawer,\n MatDrawerContainer,\n MatDrawerContent,\n MatSidenav,\n MatSidenavContainer,\n MatSidenavContent,\n ],\n})\nexport class MatSidenavModule {}\n"],"names":["__extends","d","b","__","this","constructor","extendStatics","prototype","Object","create","throwMatDuplicatedDrawerError","position","Error","MAT_DRAWER_DEFAULT_AUTOSIZE_FACTORY","setPrototypeOf","__proto__","Array","p","hasOwnProperty","matDrawerAnimations","transformDrawer","trigger","state","style","transform","visibility","box-shadow","transition","animate","MAT_DRAWER_DEFAULT_AUTOSIZE","InjectionToken","providedIn","factory","MatDrawerContent","_changeDetectorRef","_container","ngAfterContentInit","_this","_contentMarginChanges","subscribe","markForCheck","type","Component","args","selector","template","host","class","[style.margin-left.px]","[style.margin-right.px]","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","_elementRef","_focusTrapFactory","_focusMonitor","_platform","_ngZone","_doc","_elementFocusedBeforeDrawerWasOpened","_mode","_disableClose","_autoFocus","openedChange","opened","_isFocusTrapEnabled","_focusTrap","_trapFocus","_restoreFocus","run","close","event","stopPropagation","defineProperty","MatDrawer","get","value","_position","onPositionChanged","emit","enumerable","configurable","_modeChanged","next","mode","focusInitialElementWhenReady","then","hasMovedFocus","activeEl","activeElement","nativeElement","contains","HTMLElement","focusVia","_openedVia","blur","enabled","destroy","isOpen","openedVia","_opened","_animationState","_enableAnimations","Promise","resolve","pipe","take","open","toState","indexOf","fromState","animations","[@transform]","(@transform.start)","(@transform.done)","[attr.align]","[class.mat-drawer-end]","[class.mat-drawer-over]","[class.mat-drawer-side]","tabIndex","ctorParameters","ElementRef","NgZone","undefined","decorators","Optional","Inject","DOCUMENT","propDecorators","Input","Output","_openedStream","openedStart","_closedStream","closedStart","_element","_animationMode","backdropClick","EventEmitter","_destroyed","Subject","_doCheckSubject","_dir","change","takeUntil","_autosize","defaultAutosize","MatDrawerContainer","set","_drawers","forEach","drawer","_watchDrawerToggle","_watchDrawerPosition","_watchDrawerMode","length","_isDrawerOpen","_start","_end","_updateContentMargins","debounceTime","ngOnDestroy","complete","ngDoCheck","runOutsideAngular","classList","add","changes","_setContainerClass","onMicrotaskEmpty","asObservable","remove","_right","_left","_closeModalDrawer","filter","disableClose","_canHaveBackdrop","_isShowingBackdrop","left","_width","width","right","_contentMargins","exportAs","[class.mat-drawer-container-explicit-backdrop]","Directionality","ContentChildren","_content","ContentChild","autosize","hasBackdrop","MatSidenavContent","changeDetectorRef","container","_super","call","tslib_1.__extends","MatSidenav","apply","arguments","_fixedBottomGap","[class.mat-sidenav-fixed]","[style.top.px]","[style.bottom.px]","fixedInViewport","MatSidenavContainer","MatSidenavModule","NgModule","imports","CommonModule","MatCommonModule","ScrollDispatchModule","PlatformModule","exports","declarations"],"mappings":"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"}
|
|
@@ -512,7 +512,7 @@ var MatSlideToggle = /** @class */ (function (_super) {
|
|
|
512
512
|
'[class._mat-animation-noopable]': '_animationMode === "NoopAnimations"',
|
|
513
513
|
},
|
|
514
514
|
template: "<label class=\"mat-slide-toggle-label\" #label><div #toggleBar class=\"mat-slide-toggle-bar\" [class.mat-slide-toggle-bar-no-side-margin]=\"!labelContent.textContent || !labelContent.textContent.trim()\"><input #input class=\"mat-slide-toggle-input cdk-visually-hidden\" type=\"checkbox\" [id]=\"inputId\" [required]=\"required\" [tabIndex]=\"tabIndex\" [checked]=\"checked\" [disabled]=\"disabled\" [attr.name]=\"name\" [attr.aria-label]=\"ariaLabel\" [attr.aria-labelledby]=\"ariaLabelledby\" (change)=\"_onChangeEvent($event)\" (click)=\"_onInputClick($event)\"><div class=\"mat-slide-toggle-thumb-container\" #thumbContainer (slidestart)=\"_onDragStart()\" (slide)=\"_onDrag($event)\" (slideend)=\"_onDragEnd()\"><div class=\"mat-slide-toggle-thumb\"></div><div class=\"mat-slide-toggle-ripple\" mat-ripple [matRippleTrigger]=\"label\" [matRippleDisabled]=\"disableRipple || disabled\" [matRippleCentered]=\"true\" [matRippleRadius]=\"23\" [matRippleAnimation]=\"{enterDuration: 150}\"></div></div></div><span class=\"mat-slide-toggle-content\" #labelContent (cdkObserveContent)=\"_onLabelTextChange()\"><ng-content></ng-content></span></label>",
|
|
515
|
-
styles: [".mat-slide-toggle{display:inline-block;height:24px;max-width:100%;line-height:24px;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none
|
|
515
|
+
styles: [".mat-slide-toggle{display:inline-block;height:24px;max-width:100%;line-height:24px;white-space:nowrap;outline:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb-container{transform:translate3d(16px,0,0)}[dir=rtl] .mat-slide-toggle.mat-checked .mat-slide-toggle-thumb-container{transform:translate3d(-16px,0,0)}.mat-slide-toggle.mat-disabled .mat-slide-toggle-label,.mat-slide-toggle.mat-disabled .mat-slide-toggle-thumb-container{cursor:default}.mat-slide-toggle-label{display:flex;flex:1;flex-direction:row;align-items:center;height:inherit;cursor:pointer}.mat-slide-toggle-content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-slide-toggle-label-before .mat-slide-toggle-label{order:1}.mat-slide-toggle-label-before .mat-slide-toggle-bar{order:2}.mat-slide-toggle-bar,[dir=rtl] .mat-slide-toggle-label-before .mat-slide-toggle-bar{margin-right:8px;margin-left:0}.mat-slide-toggle-label-before .mat-slide-toggle-bar,[dir=rtl] .mat-slide-toggle-bar{margin-left:8px;margin-right:0}.mat-slide-toggle-bar-no-side-margin{margin-left:0;margin-right:0}.mat-slide-toggle-thumb-container{position:absolute;z-index:1;width:20px;height:20px;top:-3px;left:0;transform:translate3d(0,0,0);transition:all 80ms linear;transition-property:transform;cursor:-webkit-grab;cursor:grab}.mat-slide-toggle-thumb-container.mat-dragging,.mat-slide-toggle-thumb-container:active{cursor:-webkit-grabbing;cursor:grabbing;transition-duration:0s}._mat-animation-noopable .mat-slide-toggle-thumb-container{transition:none}[dir=rtl] .mat-slide-toggle-thumb-container{left:auto;right:0}.mat-slide-toggle-thumb{height:20px;width:20px;border-radius:50%;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.mat-slide-toggle-bar{position:relative;width:36px;height:14px;flex-shrink:0;border-radius:8px}.mat-slide-toggle-input{bottom:0;left:10px}[dir=rtl] .mat-slide-toggle-input{left:auto;right:10px}.mat-slide-toggle-bar,.mat-slide-toggle-thumb{transition:all 80ms linear;transition-property:background-color;transition-delay:50ms}._mat-animation-noopable .mat-slide-toggle-bar,._mat-animation-noopable .mat-slide-toggle-thumb{transition:none}.mat-slide-toggle-ripple{position:absolute;top:calc(50% - 23px);left:calc(50% - 23px);height:46px;width:46px;z-index:1;pointer-events:none}@media screen and (-ms-high-contrast:active){.mat-slide-toggle-thumb{background:#fff;border:1px solid #000}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb{background:#000;border:1px solid #fff}.mat-slide-toggle-bar{background:#fff}}@media screen and (-ms-high-contrast:black-on-white){.mat-slide-toggle-bar{border:1px solid #000}}"],
|
|
516
516
|
providers: [MAT_SLIDE_TOGGLE_VALUE_ACCESSOR],
|
|
517
517
|
inputs: ['disabled', 'disableRipple', 'color', 'tabIndex'],
|
|
518
518
|
encapsulation: core.ViewEncapsulation.None,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"material-slide-toggle.umd.js","sources":["../../src/lib/slide-toggle/slide-toggle-module.ts","../../src/lib/slide-toggle/slide-toggle.ts","../../src/lib/slide-toggle/slide-toggle-config.ts","../../node_modules/tslib/tslib.es6.js"],"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 {ObserversModule} from '@angular/cdk/observers';\nimport {NgModule} from '@angular/core';\nimport {GestureConfig, MatCommonModule, MatRippleModule} from '@angular/material/core';\nimport {HAMMER_GESTURE_CONFIG} from '@angular/platform-browser';\nimport {MatSlideToggle} from './slide-toggle';\n\n\n@NgModule({\n imports: [MatRippleModule, MatCommonModule, ObserversModule],\n exports: [MatSlideToggle, MatCommonModule],\n declarations: [MatSlideToggle],\n providers: [\n {provide: HAMMER_GESTURE_CONFIG, useClass: GestureConfig}\n ],\n})\nexport class MatSlideToggleModule {}\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 {FocusMonitor, FocusOrigin} from '@angular/cdk/a11y';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Platform} from '@angular/cdk/platform';\nimport {\n AfterContentInit,\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnDestroy,\n Output,\n ViewChild,\n ViewEncapsulation,\n NgZone,\n Optional,\n Inject,\n} from '@angular/core';\nimport {ControlValueAccessor, NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {\n CanColor,\n CanDisable,\n CanDisableRipple,\n HammerInput,\n HasTabIndex,\n MatRipple,\n mixinColor,\n mixinDisabled,\n mixinDisableRipple,\n mixinTabIndex,\n RippleRef,\n} from '@angular/material/core';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {\n MAT_SLIDE_TOGGLE_DEFAULT_OPTIONS,\n MatSlideToggleDefaultOptions\n} from './slide-toggle-config';\n\n// Increasing integer for generating unique ids for slide-toggle components.\nlet nextUniqueId = 0;\n\nexport const MAT_SLIDE_TOGGLE_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MatSlideToggle),\n multi: true\n};\n\n/** Change event object emitted by a MatSlideToggle. */\nexport class MatSlideToggleChange {\n constructor(\n /** The source MatSlideToggle of the event. */\n public source: MatSlideToggle,\n /** The new `checked` value of the MatSlideToggle. */\n public checked: boolean) { }\n}\n\n// Boilerplate for applying mixins to MatSlideToggle.\n/** @docs-private */\nexport class MatSlideToggleBase {\n constructor(public _elementRef: ElementRef) {}\n}\nexport const _MatSlideToggleMixinBase =\n mixinTabIndex(mixinColor(mixinDisableRipple(mixinDisabled(MatSlideToggleBase)), 'accent'));\n\n/** Represents a slidable \"switch\" toggle that can be moved between on and off. */\n@Component({\n moduleId: module.id,\n selector: 'mat-slide-toggle',\n exportAs: 'matSlideToggle',\n host: {\n 'class': 'mat-slide-toggle',\n '[id]': 'id',\n '[class.mat-checked]': 'checked',\n '[class.mat-disabled]': 'disabled',\n '[class.mat-slide-toggle-label-before]': 'labelPosition == \"before\"',\n '[class._mat-animation-noopable]': '_animationMode === \"NoopAnimations\"',\n },\n templateUrl: 'slide-toggle.html',\n styleUrls: ['slide-toggle.css'],\n providers: [MAT_SLIDE_TOGGLE_VALUE_ACCESSOR],\n inputs: ['disabled', 'disableRipple', 'color', 'tabIndex'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatSlideToggle extends _MatSlideToggleMixinBase implements OnDestroy, AfterContentInit,\n ControlValueAccessor, CanDisable, CanColor, HasTabIndex, CanDisableRipple {\n\n private onChange = (_: any) => {};\n private onTouched = () => {};\n\n private _uniqueId: string = `mat-slide-toggle-${++nextUniqueId}`;\n private _required: boolean = false;\n private _checked: boolean = false;\n\n /** Reference to the focus state ripple. */\n private _focusRipple: RippleRef | null;\n\n /** Whether the thumb is currently being dragged. */\n private _dragging = false;\n\n /** Previous checked state before drag started. */\n private _previousChecked: boolean;\n\n /** Width of the thumb bar of the slide-toggle. */\n private _thumbBarWidth: number;\n\n /** Percentage of the thumb while dragging. Percentage as fraction of 100. */\n private _dragPercentage: number;\n\n /** Reference to the thumb HTMLElement. */\n @ViewChild('thumbContainer') _thumbEl: ElementRef<HTMLElement>;\n\n /** Reference to the thumb bar HTMLElement. */\n @ViewChild('toggleBar') _thumbBarEl: ElementRef<HTMLElement>;\n\n /** Name value will be applied to the input element if present */\n @Input() name: string | null = null;\n\n /** A unique id for the slide-toggle input. If none is supplied, it will be auto-generated. */\n @Input() id: string = this._uniqueId;\n\n /** Whether the label should appear after or before the slide-toggle. Defaults to 'after' */\n @Input() labelPosition: 'before' | 'after' = 'after';\n\n /** Whether the slide-toggle element is checked or not */\n\n /** Used to set the aria-label attribute on the underlying input element. */\n @Input('aria-label') ariaLabel: string | null = null;\n\n /** Used to set the aria-labelledby attribute on the underlying input element. */\n @Input('aria-labelledby') ariaLabelledby: string | null = null;\n\n /** Whether the slide-toggle is required. */\n @Input()\n get required(): boolean { return this._required; }\n set required(value) { this._required = coerceBooleanProperty(value); }\n\n /** Whether the slide-toggle element is checked or not */\n @Input()\n get checked(): boolean { return this._checked; }\n set checked(value) {\n this._checked = coerceBooleanProperty(value);\n this._changeDetectorRef.markForCheck();\n }\n /** An event will be dispatched each time the slide-toggle changes its value. */\n @Output() readonly change: EventEmitter<MatSlideToggleChange> =\n new EventEmitter<MatSlideToggleChange>();\n\n /**\n * An event will be dispatched each time the slide-toggle input is toggled.\n * This event always fire when user toggle the slide toggle, but does not mean the slide toggle's\n * value is changed. The event does not fire when user drag to change the slide toggle value.\n */\n @Output() readonly toggleChange: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * An event will be dispatched each time the slide-toggle is dragged.\n * This event always fire when user drag the slide toggle to make a change that greater than 50%.\n * It does not mean the slide toggle's value is changed. The event does not fire when user toggle\n * the slide toggle to change the slide toggle's value.\n */\n @Output() readonly dragChange: EventEmitter<void> = new EventEmitter<void>();\n\n /** Returns the unique id for the visual hidden input. */\n get inputId(): string { return `${this.id || this._uniqueId}-input`; }\n\n /** Reference to the underlying input element. */\n @ViewChild('input') _inputElement: ElementRef;\n\n /** Reference to the ripple directive on the thumb container. */\n @ViewChild(MatRipple) _ripple: MatRipple;\n\n constructor(elementRef: ElementRef,\n /**\n * @deprecated The `_platform` parameter to be removed.\n * @breaking-change 7.0.0\n */\n _platform: Platform,\n private _focusMonitor: FocusMonitor,\n private _changeDetectorRef: ChangeDetectorRef,\n @Attribute('tabindex') tabIndex: string,\n private _ngZone: NgZone,\n @Inject(MAT_SLIDE_TOGGLE_DEFAULT_OPTIONS)\n public defaults: MatSlideToggleDefaultOptions,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) public _animationMode?: string,\n @Optional() private _dir?: Directionality) {\n super(elementRef);\n this.tabIndex = parseInt(tabIndex) || 0;\n }\n\n ngAfterContentInit() {\n this._focusMonitor\n .monitor(this._inputElement.nativeElement)\n .subscribe(focusOrigin => this._onInputFocusChange(focusOrigin));\n }\n\n ngOnDestroy() {\n this._focusMonitor.stopMonitoring(this._inputElement.nativeElement);\n }\n\n /** Method being called whenever the underlying input emits a change event. */\n _onChangeEvent(event: Event) {\n // We always have to stop propagation on the change event.\n // Otherwise the change event, from the input element, will bubble up and\n // emit its event object to the component's `change` output.\n event.stopPropagation();\n\n if (!this._dragging) {\n this.toggleChange.emit();\n }\n // Releasing the pointer over the `<label>` element while dragging triggers another\n // click event on the `<label>` element. This means that the checked state of the underlying\n // input changed unintentionally and needs to be changed back. Or when the slide toggle's config\n // disabled toggle change event by setting `disableToggleValue: true`, the slide toggle's value\n // does not change, and the checked state of the underlying input needs to be changed back.\n if (this._dragging || this.defaults.disableToggleValue) {\n this._inputElement.nativeElement.checked = this.checked;\n return;\n }\n\n // Sync the value from the underlying input element with the component instance.\n this.checked = this._inputElement.nativeElement.checked;\n\n // Emit our custom change event only if the underlying input emitted one. This ensures that\n // there is no change event, when the checked state changes programmatically.\n this._emitChangeEvent();\n }\n\n /** Method being called whenever the slide-toggle has been clicked. */\n _onInputClick(event: Event) {\n // We have to stop propagation for click events on the visual hidden input element.\n // By default, when a user clicks on a label element, a generated click event will be\n // dispatched on the associated input element. Since we are using a label element as our\n // root container, the click event on the `slide-toggle` will be executed twice.\n // The real click event will bubble up, and the generated click event also tries to bubble up.\n // This will lead to multiple click events.\n // Preventing bubbling for the second event will solve that issue.\n event.stopPropagation();\n }\n\n /** Implemented as part of ControlValueAccessor. */\n writeValue(value: any): void {\n this.checked = !!value;\n }\n\n /** Implemented as part of ControlValueAccessor. */\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n /** Implemented as part of ControlValueAccessor. */\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n /** Implemented as a part of ControlValueAccessor. */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n this._changeDetectorRef.markForCheck();\n }\n\n /** Focuses the slide-toggle. */\n focus(): void {\n this._focusMonitor.focusVia(this._inputElement.nativeElement, 'keyboard');\n }\n\n /** Toggles the checked state of the slide-toggle. */\n toggle(): void {\n this.checked = !this.checked;\n this.onChange(this.checked);\n }\n\n /** Function is called whenever the focus changes for the input element. */\n private _onInputFocusChange(focusOrigin: FocusOrigin) {\n // TODO(paul): support `program`. See https://github.com/angular/material2/issues/9889\n if (!this._focusRipple && focusOrigin === 'keyboard') {\n // For keyboard focus show a persistent ripple as focus indicator.\n this._focusRipple = this._ripple.launch(0, 0, {persistent: true});\n } else if (!focusOrigin) {\n // When a focused element becomes disabled, the browser *immediately* fires a blur event.\n // Angular does not expect events to be raised during change detection, so any state change\n // (such as a form control's 'ng-touched') will cause a changed-after-checked error.\n // See https://github.com/angular/angular/issues/17793. To work around this, we defer telling\n // the form control it has been touched until the next tick.\n Promise.resolve().then(() => this.onTouched());\n\n // Fade out and clear the focus ripple if one is currently present.\n if (this._focusRipple) {\n this._focusRipple.fadeOut();\n this._focusRipple = null;\n }\n }\n }\n\n /**\n * Emits a change event on the `change` output. Also notifies the FormControl about the change.\n */\n private _emitChangeEvent() {\n this.onChange(this.checked);\n this.change.emit(new MatSlideToggleChange(this, this.checked));\n }\n\n /** Retrieves the percentage of thumb from the moved distance. Percentage as fraction of 100. */\n private _getDragPercentage(distance: number) {\n let percentage = (distance / this._thumbBarWidth) * 100;\n\n // When the toggle was initially checked, then we have to start the drag at the end.\n if (this._previousChecked) {\n percentage += 100;\n }\n\n return Math.max(0, Math.min(percentage, 100));\n }\n\n _onDragStart() {\n if (!this.disabled && !this._dragging) {\n const thumbEl = this._thumbEl.nativeElement;\n this._thumbBarWidth = this._thumbBarEl.nativeElement.clientWidth - thumbEl.clientWidth;\n thumbEl.classList.add('mat-dragging');\n\n this._previousChecked = this.checked;\n this._dragging = true;\n }\n }\n\n _onDrag(event: HammerInput) {\n if (this._dragging) {\n const direction = this._dir && this._dir.value === 'rtl' ? -1 : 1;\n this._dragPercentage = this._getDragPercentage(event.deltaX * direction);\n // Calculate the moved distance based on the thumb bar width.\n const dragX = (this._dragPercentage / 100) * this._thumbBarWidth * direction;\n this._thumbEl.nativeElement.style.transform = `translate3d(${dragX}px, 0, 0)`;\n }\n }\n\n _onDragEnd() {\n if (this._dragging) {\n const newCheckedValue = this._dragPercentage > 50;\n\n if (newCheckedValue !== this.checked) {\n this.dragChange.emit();\n if (!this.defaults.disableDragValue) {\n this.checked = newCheckedValue;\n this._emitChangeEvent();\n }\n }\n\n // The drag should be stopped outside of the current event handler, otherwise the\n // click event will be fired before it and will revert the drag change.\n this._ngZone.runOutsideAngular(() => setTimeout(() => {\n if (this._dragging) {\n this._dragging = false;\n this._thumbEl.nativeElement.classList.remove('mat-dragging');\n\n // Reset the transform because the component will take care\n // of the thumb position after drag.\n this._thumbEl.nativeElement.style.transform = '';\n }\n }));\n }\n }\n\n /** Method being called whenever the label text changes. */\n _onLabelTextChange() {\n // This method is getting called whenever the label of the slide-toggle changes.\n // Since the slide-toggle uses the OnPush strategy we need to notify it about the change\n // that has been recognized by the cdkObserveContent directive.\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 {InjectionToken} from '@angular/core';\n\n\n/** Default `mat-slide-toggle` options that can be overridden. */\nexport interface MatSlideToggleDefaultOptions {\n /** Whether toggle action triggers value changes in slide toggle. */\n disableToggleValue?: boolean;\n /** Whether drag action triggers value changes in slide toggle. */\n disableDragValue?: boolean;\n}\n\n/** Injection token to be used to override the default options for `mat-slide-toggle`. */\nexport const MAT_SLIDE_TOGGLE_DEFAULT_OPTIONS =\n new InjectionToken<MatSlideToggleDefaultOptions>('mat-slide-toggle-default-options', {\n providedIn: 'root',\n factory: () => ({disableToggleValue: false, disableDragValue: false})\n });\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n"],"names":["HAMMER_GESTURE_CONFIG","GestureConfig","MatCommonModule","MatRippleModule","ObserversModule","NgModule","ViewChild","MatRipple","Output","Input","Directionality","Optional","Inject","ANIMATION_MODULE_TYPE","NgZone","Attribute","ChangeDetectorRef","FocusMonitor","ChangeDetectionStrategy","ViewEncapsulation","Component","coerceBooleanProperty","EventEmitter","tslib_1.__extends","mixinTabIndex","mixinColor","mixinDisableRipple","mixinDisabled","forwardRef","NG_VALUE_ACCESSOR","InjectionToken"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"material-slide-toggle.umd.js","sources":["../../src/lib/slide-toggle/slide-toggle-module.ts","../../src/lib/slide-toggle/slide-toggle.ts","../../src/lib/slide-toggle/slide-toggle-config.ts","../../node_modules/tslib/tslib.es6.js"],"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 {ObserversModule} from '@angular/cdk/observers';\nimport {NgModule} from '@angular/core';\nimport {GestureConfig, MatCommonModule, MatRippleModule} from '@angular/material/core';\nimport {HAMMER_GESTURE_CONFIG} from '@angular/platform-browser';\nimport {MatSlideToggle} from './slide-toggle';\n\n\n@NgModule({\n imports: [MatRippleModule, MatCommonModule, ObserversModule],\n exports: [MatSlideToggle, MatCommonModule],\n declarations: [MatSlideToggle],\n providers: [\n {provide: HAMMER_GESTURE_CONFIG, useClass: GestureConfig}\n ],\n})\nexport class MatSlideToggleModule {}\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 {FocusMonitor, FocusOrigin} from '@angular/cdk/a11y';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Platform} from '@angular/cdk/platform';\nimport {\n AfterContentInit,\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnDestroy,\n Output,\n ViewChild,\n ViewEncapsulation,\n NgZone,\n Optional,\n Inject,\n} from '@angular/core';\nimport {ControlValueAccessor, NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {\n CanColor,\n CanDisable,\n CanDisableRipple,\n HammerInput,\n HasTabIndex,\n MatRipple,\n mixinColor,\n mixinDisabled,\n mixinDisableRipple,\n mixinTabIndex,\n RippleRef,\n} from '@angular/material/core';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\nimport {\n MAT_SLIDE_TOGGLE_DEFAULT_OPTIONS,\n MatSlideToggleDefaultOptions\n} from './slide-toggle-config';\n\n// Increasing integer for generating unique ids for slide-toggle components.\nlet nextUniqueId = 0;\n\nexport const MAT_SLIDE_TOGGLE_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MatSlideToggle),\n multi: true\n};\n\n/** Change event object emitted by a MatSlideToggle. */\nexport class MatSlideToggleChange {\n constructor(\n /** The source MatSlideToggle of the event. */\n public source: MatSlideToggle,\n /** The new `checked` value of the MatSlideToggle. */\n public checked: boolean) { }\n}\n\n// Boilerplate for applying mixins to MatSlideToggle.\n/** @docs-private */\nexport class MatSlideToggleBase {\n constructor(public _elementRef: ElementRef) {}\n}\nexport const _MatSlideToggleMixinBase =\n mixinTabIndex(mixinColor(mixinDisableRipple(mixinDisabled(MatSlideToggleBase)), 'accent'));\n\n/** Represents a slidable \"switch\" toggle that can be moved between on and off. */\n@Component({\n moduleId: module.id,\n selector: 'mat-slide-toggle',\n exportAs: 'matSlideToggle',\n host: {\n 'class': 'mat-slide-toggle',\n '[id]': 'id',\n '[class.mat-checked]': 'checked',\n '[class.mat-disabled]': 'disabled',\n '[class.mat-slide-toggle-label-before]': 'labelPosition == \"before\"',\n '[class._mat-animation-noopable]': '_animationMode === \"NoopAnimations\"',\n },\n templateUrl: 'slide-toggle.html',\n styleUrls: ['slide-toggle.css'],\n providers: [MAT_SLIDE_TOGGLE_VALUE_ACCESSOR],\n inputs: ['disabled', 'disableRipple', 'color', 'tabIndex'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatSlideToggle extends _MatSlideToggleMixinBase implements OnDestroy, AfterContentInit,\n ControlValueAccessor, CanDisable, CanColor, HasTabIndex, CanDisableRipple {\n\n private onChange = (_: any) => {};\n private onTouched = () => {};\n\n private _uniqueId: string = `mat-slide-toggle-${++nextUniqueId}`;\n private _required: boolean = false;\n private _checked: boolean = false;\n\n /** Reference to the focus state ripple. */\n private _focusRipple: RippleRef | null;\n\n /** Whether the thumb is currently being dragged. */\n private _dragging = false;\n\n /** Previous checked state before drag started. */\n private _previousChecked: boolean;\n\n /** Width of the thumb bar of the slide-toggle. */\n private _thumbBarWidth: number;\n\n /** Percentage of the thumb while dragging. Percentage as fraction of 100. */\n private _dragPercentage: number;\n\n /** Reference to the thumb HTMLElement. */\n @ViewChild('thumbContainer') _thumbEl: ElementRef;\n\n /** Reference to the thumb bar HTMLElement. */\n @ViewChild('toggleBar') _thumbBarEl: ElementRef;\n\n /** Name value will be applied to the input element if present */\n @Input() name: string | null = null;\n\n /** A unique id for the slide-toggle input. If none is supplied, it will be auto-generated. */\n @Input() id: string = this._uniqueId;\n\n /** Whether the label should appear after or before the slide-toggle. Defaults to 'after' */\n @Input() labelPosition: 'before' | 'after' = 'after';\n\n /** Whether the slide-toggle element is checked or not */\n\n /** Used to set the aria-label attribute on the underlying input element. */\n @Input('aria-label') ariaLabel: string | null = null;\n\n /** Used to set the aria-labelledby attribute on the underlying input element. */\n @Input('aria-labelledby') ariaLabelledby: string | null = null;\n\n /** Whether the slide-toggle is required. */\n @Input()\n get required(): boolean { return this._required; }\n set required(value) { this._required = coerceBooleanProperty(value); }\n\n /** Whether the slide-toggle element is checked or not */\n @Input()\n get checked(): boolean { return this._checked; }\n set checked(value) {\n this._checked = coerceBooleanProperty(value);\n this._changeDetectorRef.markForCheck();\n }\n /** An event will be dispatched each time the slide-toggle changes its value. */\n @Output() readonly change: EventEmitter<MatSlideToggleChange> =\n new EventEmitter<MatSlideToggleChange>();\n\n /**\n * An event will be dispatched each time the slide-toggle input is toggled.\n * This event always fire when user toggle the slide toggle, but does not mean the slide toggle's\n * value is changed. The event does not fire when user drag to change the slide toggle value.\n */\n @Output() readonly toggleChange: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * An event will be dispatched each time the slide-toggle is dragged.\n * This event always fire when user drag the slide toggle to make a change that greater than 50%.\n * It does not mean the slide toggle's value is changed. The event does not fire when user toggle\n * the slide toggle to change the slide toggle's value.\n */\n @Output() readonly dragChange: EventEmitter<void> = new EventEmitter<void>();\n\n /** Returns the unique id for the visual hidden input. */\n get inputId(): string { return `${this.id || this._uniqueId}-input`; }\n\n /** Reference to the underlying input element. */\n @ViewChild('input') _inputElement: ElementRef<HTMLInputElement>;\n\n /** Reference to the ripple directive on the thumb container. */\n @ViewChild(MatRipple) _ripple: MatRipple;\n\n constructor(elementRef: ElementRef,\n /**\n * @deprecated The `_platform` parameter to be removed.\n * @breaking-change 7.0.0\n */\n _platform: Platform,\n private _focusMonitor: FocusMonitor,\n private _changeDetectorRef: ChangeDetectorRef,\n @Attribute('tabindex') tabIndex: string,\n private _ngZone: NgZone,\n @Inject(MAT_SLIDE_TOGGLE_DEFAULT_OPTIONS)\n public defaults: MatSlideToggleDefaultOptions,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) public _animationMode?: string,\n @Optional() private _dir?: Directionality) {\n super(elementRef);\n this.tabIndex = parseInt(tabIndex) || 0;\n }\n\n ngAfterContentInit() {\n this._focusMonitor\n .monitor(this._inputElement.nativeElement)\n .subscribe(focusOrigin => this._onInputFocusChange(focusOrigin));\n }\n\n ngOnDestroy() {\n this._focusMonitor.stopMonitoring(this._inputElement.nativeElement);\n }\n\n /** Method being called whenever the underlying input emits a change event. */\n _onChangeEvent(event: Event) {\n // We always have to stop propagation on the change event.\n // Otherwise the change event, from the input element, will bubble up and\n // emit its event object to the component's `change` output.\n event.stopPropagation();\n\n if (!this._dragging) {\n this.toggleChange.emit();\n }\n // Releasing the pointer over the `<label>` element while dragging triggers another\n // click event on the `<label>` element. This means that the checked state of the underlying\n // input changed unintentionally and needs to be changed back. Or when the slide toggle's config\n // disabled toggle change event by setting `disableToggleValue: true`, the slide toggle's value\n // does not change, and the checked state of the underlying input needs to be changed back.\n if (this._dragging || this.defaults.disableToggleValue) {\n this._inputElement.nativeElement.checked = this.checked;\n return;\n }\n\n // Sync the value from the underlying input element with the component instance.\n this.checked = this._inputElement.nativeElement.checked;\n\n // Emit our custom change event only if the underlying input emitted one. This ensures that\n // there is no change event, when the checked state changes programmatically.\n this._emitChangeEvent();\n }\n\n /** Method being called whenever the slide-toggle has been clicked. */\n _onInputClick(event: Event) {\n // We have to stop propagation for click events on the visual hidden input element.\n // By default, when a user clicks on a label element, a generated click event will be\n // dispatched on the associated input element. Since we are using a label element as our\n // root container, the click event on the `slide-toggle` will be executed twice.\n // The real click event will bubble up, and the generated click event also tries to bubble up.\n // This will lead to multiple click events.\n // Preventing bubbling for the second event will solve that issue.\n event.stopPropagation();\n }\n\n /** Implemented as part of ControlValueAccessor. */\n writeValue(value: any): void {\n this.checked = !!value;\n }\n\n /** Implemented as part of ControlValueAccessor. */\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n /** Implemented as part of ControlValueAccessor. */\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n /** Implemented as a part of ControlValueAccessor. */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n this._changeDetectorRef.markForCheck();\n }\n\n /** Focuses the slide-toggle. */\n focus(): void {\n this._focusMonitor.focusVia(this._inputElement.nativeElement, 'keyboard');\n }\n\n /** Toggles the checked state of the slide-toggle. */\n toggle(): void {\n this.checked = !this.checked;\n this.onChange(this.checked);\n }\n\n /** Function is called whenever the focus changes for the input element. */\n private _onInputFocusChange(focusOrigin: FocusOrigin) {\n // TODO(paul): support `program`. See https://github.com/angular/material2/issues/9889\n if (!this._focusRipple && focusOrigin === 'keyboard') {\n // For keyboard focus show a persistent ripple as focus indicator.\n this._focusRipple = this._ripple.launch(0, 0, {persistent: true});\n } else if (!focusOrigin) {\n // When a focused element becomes disabled, the browser *immediately* fires a blur event.\n // Angular does not expect events to be raised during change detection, so any state change\n // (such as a form control's 'ng-touched') will cause a changed-after-checked error.\n // See https://github.com/angular/angular/issues/17793. To work around this, we defer telling\n // the form control it has been touched until the next tick.\n Promise.resolve().then(() => this.onTouched());\n\n // Fade out and clear the focus ripple if one is currently present.\n if (this._focusRipple) {\n this._focusRipple.fadeOut();\n this._focusRipple = null;\n }\n }\n }\n\n /**\n * Emits a change event on the `change` output. Also notifies the FormControl about the change.\n */\n private _emitChangeEvent() {\n this.onChange(this.checked);\n this.change.emit(new MatSlideToggleChange(this, this.checked));\n }\n\n /** Retrieves the percentage of thumb from the moved distance. Percentage as fraction of 100. */\n private _getDragPercentage(distance: number) {\n let percentage = (distance / this._thumbBarWidth) * 100;\n\n // When the toggle was initially checked, then we have to start the drag at the end.\n if (this._previousChecked) {\n percentage += 100;\n }\n\n return Math.max(0, Math.min(percentage, 100));\n }\n\n _onDragStart() {\n if (!this.disabled && !this._dragging) {\n const thumbEl = this._thumbEl.nativeElement;\n this._thumbBarWidth = this._thumbBarEl.nativeElement.clientWidth - thumbEl.clientWidth;\n thumbEl.classList.add('mat-dragging');\n\n this._previousChecked = this.checked;\n this._dragging = true;\n }\n }\n\n _onDrag(event: HammerInput) {\n if (this._dragging) {\n const direction = this._dir && this._dir.value === 'rtl' ? -1 : 1;\n this._dragPercentage = this._getDragPercentage(event.deltaX * direction);\n // Calculate the moved distance based on the thumb bar width.\n const dragX = (this._dragPercentage / 100) * this._thumbBarWidth * direction;\n this._thumbEl.nativeElement.style.transform = `translate3d(${dragX}px, 0, 0)`;\n }\n }\n\n _onDragEnd() {\n if (this._dragging) {\n const newCheckedValue = this._dragPercentage > 50;\n\n if (newCheckedValue !== this.checked) {\n this.dragChange.emit();\n if (!this.defaults.disableDragValue) {\n this.checked = newCheckedValue;\n this._emitChangeEvent();\n }\n }\n\n // The drag should be stopped outside of the current event handler, otherwise the\n // click event will be fired before it and will revert the drag change.\n this._ngZone.runOutsideAngular(() => setTimeout(() => {\n if (this._dragging) {\n this._dragging = false;\n this._thumbEl.nativeElement.classList.remove('mat-dragging');\n\n // Reset the transform because the component will take care\n // of the thumb position after drag.\n this._thumbEl.nativeElement.style.transform = '';\n }\n }));\n }\n }\n\n /** Method being called whenever the label text changes. */\n _onLabelTextChange() {\n // This method is getting called whenever the label of the slide-toggle changes.\n // Since the slide-toggle uses the OnPush strategy we need to notify it about the change\n // that has been recognized by the cdkObserveContent directive.\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 {InjectionToken} from '@angular/core';\n\n\n/** Default `mat-slide-toggle` options that can be overridden. */\nexport interface MatSlideToggleDefaultOptions {\n /** Whether toggle action triggers value changes in slide toggle. */\n disableToggleValue?: boolean;\n /** Whether drag action triggers value changes in slide toggle. */\n disableDragValue?: boolean;\n}\n\n/** Injection token to be used to override the default options for `mat-slide-toggle`. */\nexport const MAT_SLIDE_TOGGLE_DEFAULT_OPTIONS =\n new InjectionToken<MatSlideToggleDefaultOptions>('mat-slide-toggle-default-options', {\n providedIn: 'root',\n factory: () => ({disableToggleValue: false, disableDragValue: false})\n });\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n"],"names":["HAMMER_GESTURE_CONFIG","GestureConfig","MatCommonModule","MatRippleModule","ObserversModule","NgModule","ViewChild","MatRipple","Output","Input","Directionality","Optional","Inject","ANIMATION_MODULE_TYPE","NgZone","Attribute","ChangeDetectorRef","FocusMonitor","ChangeDetectionStrategy","ViewEncapsulation","Component","coerceBooleanProperty","EventEmitter","tslib_1.__extends","mixinTabIndex","mixinColor","mixinDisableRipple","mixinDisabled","forwardRef","NG_VALUE_ACCESSOR","InjectionToken"],"mappings":"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"}
|
|
@@ -5,5 +5,5 @@
|
|
|
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
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/cdk/a11y"),require("@angular/cdk/bidi"),require("@angular/cdk/coercion"),require("@angular/cdk/platform"),require("@angular/forms"),require("@angular/material/core"),require("@angular/platform-browser/animations"),require("@angular/cdk/observers"),require("@angular/platform-browser")):"function"==typeof define&&define.amd?define("@angular/material/slideToggle",["exports","@angular/core","@angular/cdk/a11y","@angular/cdk/bidi","@angular/cdk/coercion","@angular/cdk/platform","@angular/forms","@angular/material/core","@angular/platform-browser/animations","@angular/cdk/observers","@angular/platform-browser"],t):t((e.ng=e.ng||{},e.ng.material=e.ng.material||{},e.ng.material.slideToggle={}),e.ng.core,e.ng.cdk.a11y,e.ng.cdk.bidi,e.ng.cdk.coercion,e.ng.cdk.platform,e.ng.forms,e.ng.material.core,e.ng.platformBrowser.animations,e.ng.cdk.observers,e.ng.platformBrowser)}(this,function(e,t,i,n,a,r,o,l,s,g,d){"use strict";function c(e,t){function i(){this.constructor=e}u(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}var u=function(e,t){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(e,t)},p=new t.InjectionToken("mat-slide-toggle-default-options",{providedIn:"root",factory:function(){return{disableToggleValue:!1,disableDragValue:!1}}}),h=0,m={provide:o.NG_VALUE_ACCESSOR,useExisting:t.forwardRef(function(){return y}),multi:!0},b=function(){function e(e,t){this.source=e,this.checked=t}return e}(),f=function(){function e(e){this._elementRef=e}return e}(),_=l.mixinTabIndex(l.mixinColor(l.mixinDisableRipple(l.mixinDisabled(f)),"accent")),y=function(e){function o(i,n,a,r,o,l,s,g,d){var c=e.call(this,i)||this;return c._focusMonitor=a,c._changeDetectorRef=r,c._ngZone=l,c.defaults=s,c._animationMode=g,c._dir=d,c.onChange=function(e){},c.onTouched=function(){},c._uniqueId="mat-slide-toggle-"+ ++h,c._required=!1,c._checked=!1,c._dragging=!1,c.name=null,c.id=c._uniqueId,c.labelPosition="after",c.ariaLabel=null,c.ariaLabelledby=null,c.change=new t.EventEmitter,c.toggleChange=new t.EventEmitter,c.dragChange=new t.EventEmitter,c.tabIndex=parseInt(o)||0,c}return c(o,e),Object.defineProperty(o.prototype,"required",{get:function(){return this._required},set:function(e){this._required=a.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"checked",{get:function(){return this._checked},set:function(e){this._checked=a.coerceBooleanProperty(e),this._changeDetectorRef.markForCheck()},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"inputId",{get:function(){return(this.id||this._uniqueId)+"-input"},enumerable:!0,configurable:!0}),o.prototype.ngAfterContentInit=function(){var e=this;this._focusMonitor.monitor(this._inputElement.nativeElement).subscribe(function(t){return e._onInputFocusChange(t)})},o.prototype.ngOnDestroy=function(){this._focusMonitor.stopMonitoring(this._inputElement.nativeElement)},o.prototype._onChangeEvent=function(e){if(e.stopPropagation(),this._dragging||this.toggleChange.emit(),this._dragging||this.defaults.disableToggleValue)return void(this._inputElement.nativeElement.checked=this.checked);this.checked=this._inputElement.nativeElement.checked,this._emitChangeEvent()},o.prototype._onInputClick=function(e){e.stopPropagation()},o.prototype.writeValue=function(e){this.checked=!!e},o.prototype.registerOnChange=function(e){this.onChange=e},o.prototype.registerOnTouched=function(e){this.onTouched=e},o.prototype.setDisabledState=function(e){this.disabled=e,this._changeDetectorRef.markForCheck()},o.prototype.focus=function(){this._focusMonitor.focusVia(this._inputElement.nativeElement,"keyboard")},o.prototype.toggle=function(){this.checked=!this.checked,this.onChange(this.checked)},o.prototype._onInputFocusChange=function(e){var t=this;this._focusRipple||"keyboard"!==e?e||(Promise.resolve().then(function(){return t.onTouched()}),this._focusRipple&&(this._focusRipple.fadeOut(),this._focusRipple=null)):this._focusRipple=this._ripple.launch(0,0,{persistent:!0})},o.prototype._emitChangeEvent=function(){this.onChange(this.checked),this.change.emit(new b(this,this.checked))},o.prototype._getDragPercentage=function(e){var t=e/this._thumbBarWidth*100;return this._previousChecked&&(t+=100),Math.max(0,Math.min(t,100))},o.prototype._onDragStart=function(){if(!this.disabled&&!this._dragging){var e=this._thumbEl.nativeElement;this._thumbBarWidth=this._thumbBarEl.nativeElement.clientWidth-e.clientWidth,e.classList.add("mat-dragging"),this._previousChecked=this.checked,this._dragging=!0}},o.prototype._onDrag=function(e){if(this._dragging){var t=this._dir&&"rtl"===this._dir.value?-1:1;this._dragPercentage=this._getDragPercentage(e.deltaX*t);var i=this._dragPercentage/100*this._thumbBarWidth*t;this._thumbEl.nativeElement.style.transform="translate3d("+i+"px, 0, 0)"}},o.prototype._onDragEnd=function(){var e=this;if(this._dragging){var t=this._dragPercentage>50;t!==this.checked&&(this.dragChange.emit(),this.defaults.disableDragValue||(this.checked=t,this._emitChangeEvent())),this._ngZone.runOutsideAngular(function(){return setTimeout(function(){e._dragging&&(e._dragging=!1,e._thumbEl.nativeElement.classList.remove("mat-dragging"),e._thumbEl.nativeElement.style.transform="")})})}},o.prototype._onLabelTextChange=function(){this._changeDetectorRef.markForCheck()},o.decorators=[{type:t.Component,args:[{selector:"mat-slide-toggle",exportAs:"matSlideToggle",host:{class:"mat-slide-toggle","[id]":"id","[class.mat-checked]":"checked","[class.mat-disabled]":"disabled","[class.mat-slide-toggle-label-before]":'labelPosition == "before"',"[class._mat-animation-noopable]":'_animationMode === "NoopAnimations"'},template:'<label class="mat-slide-toggle-label" #label><div #toggleBar class="mat-slide-toggle-bar" [class.mat-slide-toggle-bar-no-side-margin]="!labelContent.textContent || !labelContent.textContent.trim()"><input #input class="mat-slide-toggle-input cdk-visually-hidden" type="checkbox" [id]="inputId" [required]="required" [tabIndex]="tabIndex" [checked]="checked" [disabled]="disabled" [attr.name]="name" [attr.aria-label]="ariaLabel" [attr.aria-labelledby]="ariaLabelledby" (change)="_onChangeEvent($event)" (click)="_onInputClick($event)"><div class="mat-slide-toggle-thumb-container" #thumbContainer (slidestart)="_onDragStart()" (slide)="_onDrag($event)" (slideend)="_onDragEnd()"><div class="mat-slide-toggle-thumb"></div><div class="mat-slide-toggle-ripple" mat-ripple [matRippleTrigger]="label" [matRippleDisabled]="disableRipple || disabled" [matRippleCentered]="true" [matRippleRadius]="23" [matRippleAnimation]="{enterDuration: 150}"></div></div></div><span class="mat-slide-toggle-content" #labelContent (cdkObserveContent)="_onLabelTextChange()"><ng-content></ng-content></span></label>',styles:[".mat-slide-toggle{display:inline-block;height:24px;max-width:100%;line-height:24px;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;outline:0}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb-container{transform:translate3d(16px,0,0)}[dir=rtl] .mat-slide-toggle.mat-checked .mat-slide-toggle-thumb-container{transform:translate3d(-16px,0,0)}.mat-slide-toggle.mat-disabled .mat-slide-toggle-label,.mat-slide-toggle.mat-disabled .mat-slide-toggle-thumb-container{cursor:default}.mat-slide-toggle-label{display:flex;flex:1;flex-direction:row;align-items:center;height:inherit;cursor:pointer}.mat-slide-toggle-content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-slide-toggle-label-before .mat-slide-toggle-label{order:1}.mat-slide-toggle-label-before .mat-slide-toggle-bar{order:2}.mat-slide-toggle-bar,[dir=rtl] .mat-slide-toggle-label-before .mat-slide-toggle-bar{margin-right:8px;margin-left:0}.mat-slide-toggle-label-before .mat-slide-toggle-bar,[dir=rtl] .mat-slide-toggle-bar{margin-left:8px;margin-right:0}.mat-slide-toggle-bar-no-side-margin{margin-left:0;margin-right:0}.mat-slide-toggle-thumb-container{position:absolute;z-index:1;width:20px;height:20px;top:-3px;left:0;transform:translate3d(0,0,0);transition:all 80ms linear;transition-property:transform;cursor:-webkit-grab;cursor:grab}.mat-slide-toggle-thumb-container.mat-dragging,.mat-slide-toggle-thumb-container:active{cursor:-webkit-grabbing;cursor:grabbing;transition-duration:0s}._mat-animation-noopable .mat-slide-toggle-thumb-container{transition:none}[dir=rtl] .mat-slide-toggle-thumb-container{left:auto;right:0}.mat-slide-toggle-thumb{height:20px;width:20px;border-radius:50%;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.mat-slide-toggle-bar{position:relative;width:36px;height:14px;flex-shrink:0;border-radius:8px}.mat-slide-toggle-input{bottom:0;left:10px}[dir=rtl] .mat-slide-toggle-input{left:auto;right:10px}.mat-slide-toggle-bar,.mat-slide-toggle-thumb{transition:all 80ms linear;transition-property:background-color;transition-delay:50ms}._mat-animation-noopable .mat-slide-toggle-bar,._mat-animation-noopable .mat-slide-toggle-thumb{transition:none}.mat-slide-toggle-ripple{position:absolute;top:calc(50% - 23px);left:calc(50% - 23px);height:46px;width:46px;z-index:1;pointer-events:none}@media screen and (-ms-high-contrast:active){.mat-slide-toggle-thumb{background:#fff;border:1px solid #000}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb{background:#000;border:1px solid #fff}.mat-slide-toggle-bar{background:#fff}}@media screen and (-ms-high-contrast:black-on-white){.mat-slide-toggle-bar{border:1px solid #000}}"],providers:[m],inputs:["disabled","disableRipple","color","tabIndex"],encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],o.ctorParameters=function(){return[{type:t.ElementRef},{type:r.Platform},{type:i.FocusMonitor},{type:t.ChangeDetectorRef},{type:void 0,decorators:[{type:t.Attribute,args:["tabindex"]}]},{type:t.NgZone},{type:void 0,decorators:[{type:t.Inject,args:[p]}]},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[s.ANIMATION_MODULE_TYPE]}]},{type:n.Directionality,decorators:[{type:t.Optional}]}]},o.propDecorators={_thumbEl:[{type:t.ViewChild,args:["thumbContainer"]}],_thumbBarEl:[{type:t.ViewChild,args:["toggleBar"]}],name:[{type:t.Input}],id:[{type:t.Input}],labelPosition:[{type:t.Input}],ariaLabel:[{type:t.Input,args:["aria-label"]}],ariaLabelledby:[{type:t.Input,args:["aria-labelledby"]}],required:[{type:t.Input}],checked:[{type:t.Input}],change:[{type:t.Output}],toggleChange:[{type:t.Output}],dragChange:[{type:t.Output}],_inputElement:[{type:t.ViewChild,args:["input"]}],_ripple:[{type:t.ViewChild,args:[l.MatRipple]}]},o}(_),k=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[l.MatRippleModule,l.MatCommonModule,g.ObserversModule],exports:[y,l.MatCommonModule],declarations:[y],providers:[{provide:d.HAMMER_GESTURE_CONFIG,useClass:l.GestureConfig}]}]}],e}();e.MatSlideToggleModule=k,e.MAT_SLIDE_TOGGLE_VALUE_ACCESSOR=m,e.MatSlideToggleChange=b,e.MatSlideToggleBase=f,e._MatSlideToggleMixinBase=_,e.MatSlideToggle=y,e.MAT_SLIDE_TOGGLE_DEFAULT_OPTIONS=p,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
8
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/cdk/a11y"),require("@angular/cdk/bidi"),require("@angular/cdk/coercion"),require("@angular/cdk/platform"),require("@angular/forms"),require("@angular/material/core"),require("@angular/platform-browser/animations"),require("@angular/cdk/observers"),require("@angular/platform-browser")):"function"==typeof define&&define.amd?define("@angular/material/slideToggle",["exports","@angular/core","@angular/cdk/a11y","@angular/cdk/bidi","@angular/cdk/coercion","@angular/cdk/platform","@angular/forms","@angular/material/core","@angular/platform-browser/animations","@angular/cdk/observers","@angular/platform-browser"],t):t((e.ng=e.ng||{},e.ng.material=e.ng.material||{},e.ng.material.slideToggle={}),e.ng.core,e.ng.cdk.a11y,e.ng.cdk.bidi,e.ng.cdk.coercion,e.ng.cdk.platform,e.ng.forms,e.ng.material.core,e.ng.platformBrowser.animations,e.ng.cdk.observers,e.ng.platformBrowser)}(this,function(e,t,i,n,a,r,o,l,s,g,d){"use strict";function c(e,t){function i(){this.constructor=e}u(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}var u=function(e,t){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(e,t)},p=new t.InjectionToken("mat-slide-toggle-default-options",{providedIn:"root",factory:function(){return{disableToggleValue:!1,disableDragValue:!1}}}),h=0,m={provide:o.NG_VALUE_ACCESSOR,useExisting:t.forwardRef(function(){return y}),multi:!0},b=function(){function e(e,t){this.source=e,this.checked=t}return e}(),f=function(){function e(e){this._elementRef=e}return e}(),_=l.mixinTabIndex(l.mixinColor(l.mixinDisableRipple(l.mixinDisabled(f)),"accent")),y=function(e){function o(i,n,a,r,o,l,s,g,d){var c=e.call(this,i)||this;return c._focusMonitor=a,c._changeDetectorRef=r,c._ngZone=l,c.defaults=s,c._animationMode=g,c._dir=d,c.onChange=function(e){},c.onTouched=function(){},c._uniqueId="mat-slide-toggle-"+ ++h,c._required=!1,c._checked=!1,c._dragging=!1,c.name=null,c.id=c._uniqueId,c.labelPosition="after",c.ariaLabel=null,c.ariaLabelledby=null,c.change=new t.EventEmitter,c.toggleChange=new t.EventEmitter,c.dragChange=new t.EventEmitter,c.tabIndex=parseInt(o)||0,c}return c(o,e),Object.defineProperty(o.prototype,"required",{get:function(){return this._required},set:function(e){this._required=a.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"checked",{get:function(){return this._checked},set:function(e){this._checked=a.coerceBooleanProperty(e),this._changeDetectorRef.markForCheck()},enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,"inputId",{get:function(){return(this.id||this._uniqueId)+"-input"},enumerable:!0,configurable:!0}),o.prototype.ngAfterContentInit=function(){var e=this;this._focusMonitor.monitor(this._inputElement.nativeElement).subscribe(function(t){return e._onInputFocusChange(t)})},o.prototype.ngOnDestroy=function(){this._focusMonitor.stopMonitoring(this._inputElement.nativeElement)},o.prototype._onChangeEvent=function(e){if(e.stopPropagation(),this._dragging||this.toggleChange.emit(),this._dragging||this.defaults.disableToggleValue)return void(this._inputElement.nativeElement.checked=this.checked);this.checked=this._inputElement.nativeElement.checked,this._emitChangeEvent()},o.prototype._onInputClick=function(e){e.stopPropagation()},o.prototype.writeValue=function(e){this.checked=!!e},o.prototype.registerOnChange=function(e){this.onChange=e},o.prototype.registerOnTouched=function(e){this.onTouched=e},o.prototype.setDisabledState=function(e){this.disabled=e,this._changeDetectorRef.markForCheck()},o.prototype.focus=function(){this._focusMonitor.focusVia(this._inputElement.nativeElement,"keyboard")},o.prototype.toggle=function(){this.checked=!this.checked,this.onChange(this.checked)},o.prototype._onInputFocusChange=function(e){var t=this;this._focusRipple||"keyboard"!==e?e||(Promise.resolve().then(function(){return t.onTouched()}),this._focusRipple&&(this._focusRipple.fadeOut(),this._focusRipple=null)):this._focusRipple=this._ripple.launch(0,0,{persistent:!0})},o.prototype._emitChangeEvent=function(){this.onChange(this.checked),this.change.emit(new b(this,this.checked))},o.prototype._getDragPercentage=function(e){var t=e/this._thumbBarWidth*100;return this._previousChecked&&(t+=100),Math.max(0,Math.min(t,100))},o.prototype._onDragStart=function(){if(!this.disabled&&!this._dragging){var e=this._thumbEl.nativeElement;this._thumbBarWidth=this._thumbBarEl.nativeElement.clientWidth-e.clientWidth,e.classList.add("mat-dragging"),this._previousChecked=this.checked,this._dragging=!0}},o.prototype._onDrag=function(e){if(this._dragging){var t=this._dir&&"rtl"===this._dir.value?-1:1;this._dragPercentage=this._getDragPercentage(e.deltaX*t);var i=this._dragPercentage/100*this._thumbBarWidth*t;this._thumbEl.nativeElement.style.transform="translate3d("+i+"px, 0, 0)"}},o.prototype._onDragEnd=function(){var e=this;if(this._dragging){var t=this._dragPercentage>50;t!==this.checked&&(this.dragChange.emit(),this.defaults.disableDragValue||(this.checked=t,this._emitChangeEvent())),this._ngZone.runOutsideAngular(function(){return setTimeout(function(){e._dragging&&(e._dragging=!1,e._thumbEl.nativeElement.classList.remove("mat-dragging"),e._thumbEl.nativeElement.style.transform="")})})}},o.prototype._onLabelTextChange=function(){this._changeDetectorRef.markForCheck()},o.decorators=[{type:t.Component,args:[{selector:"mat-slide-toggle",exportAs:"matSlideToggle",host:{class:"mat-slide-toggle","[id]":"id","[class.mat-checked]":"checked","[class.mat-disabled]":"disabled","[class.mat-slide-toggle-label-before]":'labelPosition == "before"',"[class._mat-animation-noopable]":'_animationMode === "NoopAnimations"'},template:'<label class="mat-slide-toggle-label" #label><div #toggleBar class="mat-slide-toggle-bar" [class.mat-slide-toggle-bar-no-side-margin]="!labelContent.textContent || !labelContent.textContent.trim()"><input #input class="mat-slide-toggle-input cdk-visually-hidden" type="checkbox" [id]="inputId" [required]="required" [tabIndex]="tabIndex" [checked]="checked" [disabled]="disabled" [attr.name]="name" [attr.aria-label]="ariaLabel" [attr.aria-labelledby]="ariaLabelledby" (change)="_onChangeEvent($event)" (click)="_onInputClick($event)"><div class="mat-slide-toggle-thumb-container" #thumbContainer (slidestart)="_onDragStart()" (slide)="_onDrag($event)" (slideend)="_onDragEnd()"><div class="mat-slide-toggle-thumb"></div><div class="mat-slide-toggle-ripple" mat-ripple [matRippleTrigger]="label" [matRippleDisabled]="disableRipple || disabled" [matRippleCentered]="true" [matRippleRadius]="23" [matRippleAnimation]="{enterDuration: 150}"></div></div></div><span class="mat-slide-toggle-content" #labelContent (cdkObserveContent)="_onLabelTextChange()"><ng-content></ng-content></span></label>',styles:[".mat-slide-toggle{display:inline-block;height:24px;max-width:100%;line-height:24px;white-space:nowrap;outline:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb-container{transform:translate3d(16px,0,0)}[dir=rtl] .mat-slide-toggle.mat-checked .mat-slide-toggle-thumb-container{transform:translate3d(-16px,0,0)}.mat-slide-toggle.mat-disabled .mat-slide-toggle-label,.mat-slide-toggle.mat-disabled .mat-slide-toggle-thumb-container{cursor:default}.mat-slide-toggle-label{display:flex;flex:1;flex-direction:row;align-items:center;height:inherit;cursor:pointer}.mat-slide-toggle-content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-slide-toggle-label-before .mat-slide-toggle-label{order:1}.mat-slide-toggle-label-before .mat-slide-toggle-bar{order:2}.mat-slide-toggle-bar,[dir=rtl] .mat-slide-toggle-label-before .mat-slide-toggle-bar{margin-right:8px;margin-left:0}.mat-slide-toggle-label-before .mat-slide-toggle-bar,[dir=rtl] .mat-slide-toggle-bar{margin-left:8px;margin-right:0}.mat-slide-toggle-bar-no-side-margin{margin-left:0;margin-right:0}.mat-slide-toggle-thumb-container{position:absolute;z-index:1;width:20px;height:20px;top:-3px;left:0;transform:translate3d(0,0,0);transition:all 80ms linear;transition-property:transform;cursor:-webkit-grab;cursor:grab}.mat-slide-toggle-thumb-container.mat-dragging,.mat-slide-toggle-thumb-container:active{cursor:-webkit-grabbing;cursor:grabbing;transition-duration:0s}._mat-animation-noopable .mat-slide-toggle-thumb-container{transition:none}[dir=rtl] .mat-slide-toggle-thumb-container{left:auto;right:0}.mat-slide-toggle-thumb{height:20px;width:20px;border-radius:50%;box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.mat-slide-toggle-bar{position:relative;width:36px;height:14px;flex-shrink:0;border-radius:8px}.mat-slide-toggle-input{bottom:0;left:10px}[dir=rtl] .mat-slide-toggle-input{left:auto;right:10px}.mat-slide-toggle-bar,.mat-slide-toggle-thumb{transition:all 80ms linear;transition-property:background-color;transition-delay:50ms}._mat-animation-noopable .mat-slide-toggle-bar,._mat-animation-noopable .mat-slide-toggle-thumb{transition:none}.mat-slide-toggle-ripple{position:absolute;top:calc(50% - 23px);left:calc(50% - 23px);height:46px;width:46px;z-index:1;pointer-events:none}@media screen and (-ms-high-contrast:active){.mat-slide-toggle-thumb{background:#fff;border:1px solid #000}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb{background:#000;border:1px solid #fff}.mat-slide-toggle-bar{background:#fff}}@media screen and (-ms-high-contrast:black-on-white){.mat-slide-toggle-bar{border:1px solid #000}}"],providers:[m],inputs:["disabled","disableRipple","color","tabIndex"],encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],o.ctorParameters=function(){return[{type:t.ElementRef},{type:r.Platform},{type:i.FocusMonitor},{type:t.ChangeDetectorRef},{type:void 0,decorators:[{type:t.Attribute,args:["tabindex"]}]},{type:t.NgZone},{type:void 0,decorators:[{type:t.Inject,args:[p]}]},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[s.ANIMATION_MODULE_TYPE]}]},{type:n.Directionality,decorators:[{type:t.Optional}]}]},o.propDecorators={_thumbEl:[{type:t.ViewChild,args:["thumbContainer"]}],_thumbBarEl:[{type:t.ViewChild,args:["toggleBar"]}],name:[{type:t.Input}],id:[{type:t.Input}],labelPosition:[{type:t.Input}],ariaLabel:[{type:t.Input,args:["aria-label"]}],ariaLabelledby:[{type:t.Input,args:["aria-labelledby"]}],required:[{type:t.Input}],checked:[{type:t.Input}],change:[{type:t.Output}],toggleChange:[{type:t.Output}],dragChange:[{type:t.Output}],_inputElement:[{type:t.ViewChild,args:["input"]}],_ripple:[{type:t.ViewChild,args:[l.MatRipple]}]},o}(_),k=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[l.MatRippleModule,l.MatCommonModule,g.ObserversModule],exports:[y,l.MatCommonModule],declarations:[y],providers:[{provide:d.HAMMER_GESTURE_CONFIG,useClass:l.GestureConfig}]}]}],e}();e.MatSlideToggleModule=k,e.MAT_SLIDE_TOGGLE_VALUE_ACCESSOR=m,e.MatSlideToggleChange=b,e.MatSlideToggleBase=f,e._MatSlideToggleMixinBase=_,e.MatSlideToggle=y,e.MAT_SLIDE_TOGGLE_DEFAULT_OPTIONS=p,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
9
9
|
//# sourceMappingURL=material-slide-toggle.umd.min.js.map
|