@angular/material 7.0.4 → 7.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/_theming.scss +61 -44
- package/autocomplete/typings/index.d.ts +1 -1
- package/autocomplete/typings/index.metadata.json +1 -1
- package/badge/typings/index.metadata.json +1 -1
- package/bottom-sheet/typings/bottom-sheet-config.d.ts +5 -0
- 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 +126 -32
- 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 +38 -5
- 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 +68 -21
- package/bundles/material-bottom-sheet.umd.js.map +1 -1
- package/bundles/material-bottom-sheet.umd.min.js +1 -1
- package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
- package/bundles/material-button-toggle.umd.js +36 -13
- package/bundles/material-button-toggle.umd.js.map +1 -1
- package/bundles/material-button-toggle.umd.min.js +1 -1
- package/bundles/material-button-toggle.umd.min.js.map +1 -1
- package/bundles/material-button.umd.js +21 -14
- package/bundles/material-button.umd.js.map +1 -1
- package/bundles/material-button.umd.min.js +1 -1
- package/bundles/material-button.umd.min.js.map +1 -1
- package/bundles/material-card.umd.js +3 -3
- 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 +56 -15
- package/bundles/material-checkbox.umd.js.map +1 -1
- package/bundles/material-checkbox.umd.min.js +1 -1
- package/bundles/material-checkbox.umd.min.js.map +1 -1
- package/bundles/material-chips.umd.js +124 -34
- 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 +189 -126
- package/bundles/material-core.umd.js.map +1 -1
- package/bundles/material-core.umd.min.js +1 -1
- package/bundles/material-core.umd.min.js.map +1 -1
- package/bundles/material-datepicker.umd.js +231 -53
- 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 +138 -40
- package/bundles/material-dialog.umd.js.map +1 -1
- package/bundles/material-dialog.umd.min.js +1 -1
- package/bundles/material-dialog.umd.min.js.map +1 -1
- package/bundles/material-divider.umd.js +2 -2
- package/bundles/material-divider.umd.js.map +1 -1
- package/bundles/material-divider.umd.min.js.map +1 -1
- package/bundles/material-expansion.umd.js +53 -27
- 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 +121 -32
- 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 +66 -15
- 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 +277 -78
- package/bundles/material-icon.umd.js.map +1 -1
- package/bundles/material-icon.umd.min.js +1 -1
- package/bundles/material-icon.umd.min.js.map +1 -1
- package/bundles/material-input.umd.js +50 -22
- 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 +69 -21
- package/bundles/material-list.umd.js.map +1 -1
- package/bundles/material-list.umd.min.js +2 -6
- package/bundles/material-list.umd.min.js.map +1 -1
- package/bundles/material-menu.umd.js +171 -66
- package/bundles/material-menu.umd.js.map +1 -1
- package/bundles/material-menu.umd.min.js +1 -1
- package/bundles/material-menu.umd.min.js.map +1 -1
- package/bundles/material-paginator.umd.js +52 -10
- package/bundles/material-paginator.umd.js.map +1 -1
- package/bundles/material-paginator.umd.min.js +1 -1
- package/bundles/material-paginator.umd.min.js.map +1 -1
- package/bundles/material-progress-bar.umd.js +31 -12
- package/bundles/material-progress-bar.umd.js.map +1 -1
- package/bundles/material-progress-bar.umd.min.js +1 -1
- package/bundles/material-progress-bar.umd.min.js.map +1 -1
- package/bundles/material-progress-spinner.umd.js +29 -13
- package/bundles/material-progress-spinner.umd.js.map +1 -1
- package/bundles/material-progress-spinner.umd.min.js.map +1 -1
- package/bundles/material-radio.umd.js +38 -40
- package/bundles/material-radio.umd.js.map +1 -1
- package/bundles/material-radio.umd.min.js +1 -1
- package/bundles/material-radio.umd.min.js.map +1 -1
- package/bundles/material-select.umd.js +189 -51
- 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 +104 -25
- 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 +30 -14
- 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 +91 -21
- 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 +71 -19
- package/bundles/material-snack-bar.umd.js.map +1 -1
- package/bundles/material-snack-bar.umd.min.js +1 -1
- package/bundles/material-snack-bar.umd.min.js.map +1 -1
- package/bundles/material-sort.umd.js +46 -24
- package/bundles/material-sort.umd.js.map +1 -1
- package/bundles/material-sort.umd.min.js +1 -1
- package/bundles/material-sort.umd.min.js.map +1 -1
- package/bundles/material-stepper.umd.js +37 -35
- 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 +29 -9
- package/bundles/material-table.umd.js.map +1 -1
- package/bundles/material-table.umd.min.js.map +1 -1
- package/bundles/material-tabs.umd.js +170 -68
- package/bundles/material-tabs.umd.js.map +1 -1
- package/bundles/material-tabs.umd.min.js +2 -2
- package/bundles/material-tabs.umd.min.js.map +1 -1
- package/bundles/material-toolbar.umd.js +14 -4
- package/bundles/material-toolbar.umd.js.map +1 -1
- package/bundles/material-toolbar.umd.min.js +1 -1
- package/bundles/material-toolbar.umd.min.js.map +1 -1
- package/bundles/material-tooltip.umd.js +53 -26
- 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 +25 -16
- 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 +2853 -1010
- package/bundles/material.umd.js.map +1 -1
- package/bundles/material.umd.min.js +19 -21
- package/bundles/material.umd.min.js.map +1 -1
- package/button/typings/button.d.ts +0 -5
- package/button/typings/index.metadata.json +1 -1
- package/button-toggle/typings/index.metadata.json +1 -1
- package/card/typings/index.metadata.json +1 -1
- package/checkbox/typings/index.metadata.json +1 -1
- package/chips/typings/chip-list.d.ts +1 -1
- package/chips/typings/chip.d.ts +2 -2
- package/chips/typings/index.metadata.json +1 -1
- package/core/typings/index.metadata.json +1 -1
- package/core/typings/{testing/month-constants.d.ts → month-constants.d.ts} +2 -0
- package/core/typings/public-api.d.ts +1 -1
- package/datepicker/typings/calendar-body.d.ts +21 -5
- package/datepicker/typings/calendar.d.ts +4 -1
- package/datepicker/typings/datepicker.d.ts +3 -0
- package/datepicker/typings/index.metadata.json +1 -1
- package/datepicker/typings/month-view.d.ts +4 -2
- package/dialog/typings/index.metadata.json +1 -1
- package/esm2015/autocomplete.js +60 -29
- package/esm2015/autocomplete.js.map +1 -1
- package/esm2015/badge.js +29 -6
- package/esm2015/badge.js.map +1 -1
- package/esm2015/bottom-sheet.js +45 -22
- package/esm2015/bottom-sheet.js.map +1 -1
- package/esm2015/button-toggle.js +20 -11
- package/esm2015/button-toggle.js.map +1 -1
- package/esm2015/button.js +20 -15
- package/esm2015/button.js.map +1 -1
- package/esm2015/card.js +5 -5
- package/esm2015/card.js.map +1 -1
- package/esm2015/checkbox.js +30 -12
- package/esm2015/checkbox.js.map +1 -1
- package/esm2015/chips.js +64 -28
- package/esm2015/chips.js.map +1 -1
- package/esm2015/core.js +148 -129
- package/esm2015/core.js.map +1 -1
- package/esm2015/datepicker.js +124 -41
- package/esm2015/datepicker.js.map +1 -1
- package/esm2015/dialog.js +77 -40
- package/esm2015/dialog.js.map +1 -1
- package/esm2015/divider.js +4 -4
- package/esm2015/divider.js.map +1 -1
- package/esm2015/expansion.js +58 -31
- package/esm2015/expansion.js.map +1 -1
- package/esm2015/form-field.js +94 -34
- package/esm2015/form-field.js.map +1 -1
- package/esm2015/grid-list.js +45 -17
- package/esm2015/grid-list.js.map +1 -1
- package/esm2015/icon.js +136 -67
- package/esm2015/icon.js.map +1 -1
- package/esm2015/input.js +44 -23
- package/esm2015/input.js.map +1 -1
- package/esm2015/list.js +47 -22
- package/esm2015/list.js.map +1 -1
- package/esm2015/material.js +13 -12
- package/esm2015/material.js.map +1 -1
- package/esm2015/menu.js +109 -63
- package/esm2015/menu.js.map +1 -1
- package/esm2015/paginator.js +35 -12
- package/esm2015/paginator.js.map +1 -1
- package/esm2015/progress-bar.js +26 -13
- package/esm2015/progress-bar.js.map +1 -1
- package/esm2015/progress-spinner.js +24 -14
- package/esm2015/progress-spinner.js.map +1 -1
- package/esm2015/radio.js +22 -21
- package/esm2015/radio.js.map +1 -1
- package/esm2015/select.js +116 -53
- package/esm2015/select.js.map +1 -1
- package/esm2015/sidenav.js +75 -28
- package/esm2015/sidenav.js.map +1 -1
- package/esm2015/slide-toggle.js +23 -15
- package/esm2015/slide-toggle.js.map +1 -1
- package/esm2015/slider.js +54 -24
- package/esm2015/slider.js.map +1 -1
- package/esm2015/snack-bar.js +41 -21
- package/esm2015/snack-bar.js.map +1 -1
- package/esm2015/sort.js +47 -24
- package/esm2015/sort.js.map +1 -1
- package/esm2015/stepper.js +35 -32
- package/esm2015/stepper.js.map +1 -1
- package/esm2015/table.js +31 -11
- package/esm2015/table.js.map +1 -1
- package/esm2015/tabs.js +113 -53
- package/esm2015/tabs.js.map +1 -1
- package/esm2015/toolbar.js +9 -5
- package/esm2015/toolbar.js.map +1 -1
- package/esm2015/tooltip.js +43 -28
- package/esm2015/tooltip.js.map +1 -1
- package/esm2015/tree.js +22 -17
- package/esm2015/tree.js.map +1 -1
- package/esm5/autocomplete.es5.js +128 -34
- package/esm5/autocomplete.es5.js.map +1 -1
- package/esm5/badge.es5.js +40 -7
- package/esm5/badge.es5.js.map +1 -1
- package/esm5/bottom-sheet.es5.js +70 -23
- package/esm5/bottom-sheet.es5.js.map +1 -1
- package/esm5/button-toggle.es5.js +38 -15
- package/esm5/button-toggle.es5.js.map +1 -1
- package/esm5/button.es5.js +23 -16
- package/esm5/button.es5.js.map +1 -1
- package/esm5/card.es5.js +5 -5
- package/esm5/card.es5.js.map +1 -1
- package/esm5/checkbox.es5.js +58 -17
- package/esm5/checkbox.es5.js.map +1 -1
- package/esm5/chips.es5.js +127 -37
- package/esm5/chips.es5.js.map +1 -1
- package/esm5/core.es5.js +192 -129
- package/esm5/core.es5.js.map +1 -1
- package/esm5/datepicker.es5.js +233 -55
- package/esm5/datepicker.es5.js.map +1 -1
- package/esm5/dialog.es5.js +140 -42
- package/esm5/dialog.es5.js.map +1 -1
- package/esm5/divider.es5.js +4 -4
- package/esm5/divider.es5.js.map +1 -1
- package/esm5/expansion.es5.js +56 -31
- package/esm5/expansion.es5.js.map +1 -1
- package/esm5/form-field.es5.js +125 -36
- package/esm5/form-field.es5.js.map +1 -1
- package/esm5/grid-list.es5.js +68 -17
- package/esm5/grid-list.es5.js.map +1 -1
- package/esm5/icon.es5.js +279 -80
- package/esm5/icon.es5.js.map +1 -1
- package/esm5/input.es5.js +52 -24
- package/esm5/input.es5.js.map +1 -1
- package/esm5/list.es5.js +72 -24
- package/esm5/list.es5.js.map +1 -1
- package/esm5/material.es5.js +13 -12
- package/esm5/material.es5.js.map +1 -1
- package/esm5/menu.es5.js +170 -65
- package/esm5/menu.es5.js.map +1 -1
- package/esm5/paginator.es5.js +55 -13
- package/esm5/paginator.es5.js.map +1 -1
- package/esm5/progress-bar.es5.js +33 -14
- package/esm5/progress-bar.es5.js.map +1 -1
- package/esm5/progress-spinner.es5.js +31 -15
- package/esm5/progress-spinner.es5.js.map +1 -1
- package/esm5/radio.es5.js +42 -42
- package/esm5/radio.es5.js.map +1 -1
- package/esm5/select.es5.js +193 -55
- package/esm5/select.es5.js.map +1 -1
- package/esm5/sidenav.es5.js +107 -28
- package/esm5/sidenav.es5.js.map +1 -1
- package/esm5/slide-toggle.es5.js +32 -16
- package/esm5/slide-toggle.es5.js.map +1 -1
- package/esm5/slider.es5.js +94 -24
- package/esm5/slider.es5.js.map +1 -1
- package/esm5/snack-bar.es5.js +73 -21
- package/esm5/snack-bar.es5.js.map +1 -1
- package/esm5/sort.es5.js +53 -26
- package/esm5/sort.es5.js.map +1 -1
- package/esm5/stepper.es5.js +40 -38
- package/esm5/stepper.es5.js.map +1 -1
- package/esm5/table.es5.js +31 -11
- package/esm5/table.es5.js.map +1 -1
- package/esm5/tabs.es5.js +162 -61
- package/esm5/tabs.es5.js.map +1 -1
- package/esm5/toolbar.es5.js +16 -6
- package/esm5/toolbar.es5.js.map +1 -1
- package/esm5/tooltip.es5.js +55 -28
- package/esm5/tooltip.es5.js.map +1 -1
- package/esm5/tree.es5.js +27 -18
- package/esm5/tree.es5.js.map +1 -1
- package/expansion/typings/expansion-panel-header.d.ts +2 -2
- package/expansion/typings/expansion-panel.d.ts +19 -2
- package/expansion/typings/index.metadata.json +1 -1
- package/form-field/typings/form-field.d.ts +15 -4
- package/form-field/typings/index.metadata.json +1 -1
- package/grid-list/typings/index.d.ts +1 -1
- package/grid-list/typings/index.metadata.json +1 -1
- package/icon/typings/index.metadata.json +1 -1
- package/list/typings/index.metadata.json +1 -1
- package/material.d.ts +1 -1
- package/material.metadata.json +3 -3
- package/menu/typings/index.d.ts +4 -4
- package/menu/typings/index.metadata.json +1 -1
- package/menu/typings/menu-directive.d.ts +1 -0
- package/menu/typings/menu-item.d.ts +2 -0
- package/package.json +5 -5
- package/paginator/typings/index.metadata.json +1 -1
- package/paginator/typings/paginator.d.ts +7 -3
- 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/radio/typings/index.metadata.json +1 -1
- package/radio/typings/radio.d.ts +2 -6
- package/schematics/ng-add/theming/{custom-theme.d.ts → create-custom-theme.d.ts} +0 -0
- package/schematics/ng-add/theming/{custom-theme.js → create-custom-theme.js} +1 -1
- package/schematics/ng-add/theming/create-custom-theme.js.map +1 -0
- package/schematics/ng-add/theming/theming.js +35 -19
- package/schematics/ng-add/theming/theming.js.map +1 -1
- package/schematics/ng-generate/address-form/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +2 -2
- package/schematics/ng-generate/dashboard/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +2 -2
- package/schematics/ng-generate/nav/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +2 -2
- package/schematics/ng-generate/table/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +2 -2
- package/schematics/ng-generate/tree/files/__path__/__name@dasherize@if-flat__/__name@dasherize__.component.ts +2 -2
- package/select/typings/index.metadata.json +1 -1
- package/select/typings/select.d.ts +12 -2
- package/sidenav/typings/drawer.d.ts +9 -2
- package/sidenav/typings/index.metadata.json +1 -1
- package/slide-toggle/typings/index.metadata.json +1 -1
- package/slider/typings/index.metadata.json +1 -1
- package/snack-bar/typings/index.metadata.json +1 -1
- package/sort/typings/index.metadata.json +1 -1
- package/stepper/typings/index.metadata.json +1 -1
- package/stepper/typings/step-header.d.ts +3 -5
- package/tabs/typings/index.d.ts +5 -5
- package/tabs/typings/index.metadata.json +1 -1
- package/tabs/typings/tab-body.d.ts +2 -0
- package/tabs/typings/tab-group.d.ts +11 -2
- package/tabs/typings/tab-header.d.ts +9 -3
- package/toolbar/typings/index.metadata.json +1 -1
- package/tooltip/typings/index.metadata.json +1 -1
- package/tree/typings/data-source/flat-data-source.d.ts +2 -2
- package/tree/typings/index.metadata.json +1 -1
- package/typings/autocomplete/index.d.ts +1 -1
- package/typings/autocomplete/index.metadata.json +1 -1
- package/typings/badge/index.metadata.json +1 -1
- package/typings/bottom-sheet/bottom-sheet-config.d.ts +5 -0
- package/typings/bottom-sheet/bottom-sheet-container.d.ts +1 -1
- package/typings/bottom-sheet/index.metadata.json +1 -1
- package/typings/button/button.d.ts +0 -5
- package/typings/button/index.metadata.json +1 -1
- package/typings/button-toggle/index.metadata.json +1 -1
- package/typings/card/index.metadata.json +1 -1
- package/typings/checkbox/index.metadata.json +1 -1
- package/typings/chips/chip-list.d.ts +1 -1
- package/typings/chips/chip.d.ts +2 -2
- package/typings/chips/index.metadata.json +1 -1
- package/typings/core/index.metadata.json +1 -1
- package/typings/core/{testing/month-constants.d.ts → month-constants.d.ts} +2 -0
- package/typings/core/public-api.d.ts +1 -1
- package/typings/datepicker/calendar-body.d.ts +21 -5
- package/typings/datepicker/calendar.d.ts +4 -1
- package/typings/datepicker/datepicker.d.ts +3 -0
- package/typings/datepicker/index.metadata.json +1 -1
- package/typings/datepicker/month-view.d.ts +4 -2
- package/typings/dialog/index.metadata.json +1 -1
- package/typings/esm5/autocomplete/index.d.ts +1 -1
- package/typings/esm5/autocomplete/index.metadata.json +1 -1
- package/typings/esm5/badge/index.metadata.json +1 -1
- package/typings/esm5/bottom-sheet/bottom-sheet-config.d.ts +5 -0
- 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/button.d.ts +0 -5
- package/typings/esm5/button/index.metadata.json +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/index.metadata.json +1 -1
- package/typings/esm5/chips/chip-list.d.ts +1 -1
- package/typings/esm5/chips/chip.d.ts +2 -2
- package/typings/esm5/chips/index.metadata.json +1 -1
- package/typings/esm5/core/index.metadata.json +1 -1
- package/typings/esm5/core/{testing/month-constants.d.ts → month-constants.d.ts} +2 -0
- package/typings/esm5/core/public-api.d.ts +1 -1
- package/typings/esm5/datepicker/calendar-body.d.ts +21 -5
- package/typings/esm5/datepicker/calendar.d.ts +4 -1
- package/typings/esm5/datepicker/datepicker.d.ts +3 -0
- package/typings/esm5/datepicker/index.metadata.json +1 -1
- package/typings/esm5/datepicker/month-view.d.ts +4 -2
- package/typings/esm5/dialog/index.metadata.json +1 -1
- package/typings/esm5/expansion/expansion-panel-header.d.ts +2 -2
- package/typings/esm5/expansion/expansion-panel.d.ts +19 -2
- package/typings/esm5/expansion/index.metadata.json +1 -1
- package/typings/esm5/form-field/form-field.d.ts +15 -4
- package/typings/esm5/form-field/index.metadata.json +1 -1
- package/typings/esm5/grid-list/index.d.ts +1 -1
- package/typings/esm5/grid-list/index.metadata.json +1 -1
- package/typings/esm5/icon/index.metadata.json +1 -1
- package/typings/esm5/index.metadata.json +1 -1
- package/typings/esm5/list/index.metadata.json +1 -1
- 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 -0
- package/typings/esm5/menu/menu-item.d.ts +2 -0
- package/typings/esm5/paginator/index.metadata.json +1 -1
- package/typings/esm5/paginator/paginator.d.ts +7 -3
- package/typings/esm5/progress-bar/index.metadata.json +1 -1
- package/typings/esm5/radio/index.metadata.json +1 -1
- package/typings/esm5/radio/radio.d.ts +2 -6
- package/typings/esm5/select/index.metadata.json +1 -1
- package/typings/esm5/select/select.d.ts +12 -2
- package/typings/esm5/sidenav/drawer.d.ts +9 -2
- package/typings/esm5/sidenav/index.metadata.json +1 -1
- package/typings/esm5/slide-toggle/index.metadata.json +1 -1
- package/typings/esm5/slider/index.metadata.json +1 -1
- package/typings/esm5/snack-bar/index.metadata.json +1 -1
- package/typings/esm5/sort/index.metadata.json +1 -1
- package/typings/esm5/stepper/index.metadata.json +1 -1
- package/typings/esm5/stepper/step-header.d.ts +3 -5
- package/typings/esm5/tabs/index.d.ts +5 -5
- package/typings/esm5/tabs/index.metadata.json +1 -1
- package/typings/esm5/tabs/tab-body.d.ts +2 -0
- package/typings/esm5/tabs/tab-group.d.ts +11 -2
- package/typings/esm5/tabs/tab-header.d.ts +9 -3
- package/typings/esm5/toolbar/index.metadata.json +1 -1
- package/typings/esm5/tooltip/index.metadata.json +1 -1
- package/typings/esm5/tree/data-source/flat-data-source.d.ts +2 -2
- package/typings/esm5/tree/index.metadata.json +1 -1
- package/typings/expansion/expansion-panel-header.d.ts +2 -2
- package/typings/expansion/expansion-panel.d.ts +19 -2
- package/typings/expansion/index.metadata.json +1 -1
- package/typings/form-field/form-field.d.ts +15 -4
- package/typings/form-field/index.metadata.json +1 -1
- package/typings/grid-list/index.d.ts +1 -1
- package/typings/grid-list/index.metadata.json +1 -1
- package/typings/icon/index.metadata.json +1 -1
- package/typings/index.metadata.json +1 -1
- package/typings/list/index.metadata.json +1 -1
- package/typings/menu/index.d.ts +4 -4
- package/typings/menu/index.metadata.json +1 -1
- package/typings/menu/menu-directive.d.ts +1 -0
- package/typings/menu/menu-item.d.ts +2 -0
- package/typings/paginator/index.metadata.json +1 -1
- package/typings/paginator/paginator.d.ts +7 -3
- package/typings/progress-bar/index.metadata.json +1 -1
- package/typings/radio/index.metadata.json +1 -1
- package/typings/radio/radio.d.ts +2 -6
- package/typings/schematics/ng-add/theming/{custom-theme.d.ts → create-custom-theme.d.ts} +0 -0
- package/typings/select/index.metadata.json +1 -1
- package/typings/select/select.d.ts +12 -2
- package/typings/sidenav/drawer.d.ts +9 -2
- package/typings/sidenav/index.metadata.json +1 -1
- package/typings/slide-toggle/index.metadata.json +1 -1
- package/typings/slider/index.metadata.json +1 -1
- package/typings/snack-bar/index.metadata.json +1 -1
- package/typings/sort/index.metadata.json +1 -1
- package/typings/stepper/index.metadata.json +1 -1
- package/typings/stepper/step-header.d.ts +3 -5
- package/typings/tabs/index.d.ts +5 -5
- package/typings/tabs/index.metadata.json +1 -1
- package/typings/tabs/tab-body.d.ts +2 -0
- package/typings/tabs/tab-group.d.ts +11 -2
- package/typings/tabs/tab-header.d.ts +9 -3
- package/typings/toolbar/index.metadata.json +1 -1
- package/typings/tooltip/index.metadata.json +1 -1
- package/typings/tree/data-source/flat-data-source.d.ts +2 -2
- package/typings/tree/index.metadata.json +1 -1
- package/schematics/ng-add/theming/custom-theme.js.map +0 -1
package/esm5/icon.es5.js
CHANGED
|
@@ -17,7 +17,7 @@ import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* @fileoverview added by tsickle
|
|
20
|
-
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
|
|
20
|
+
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
21
21
|
*/
|
|
22
22
|
/**
|
|
23
23
|
* Returns an exception to be thrown in the case when attempting to
|
|
@@ -72,11 +72,11 @@ SvgIconConfig = /** @class */ (function () {
|
|
|
72
72
|
function SvgIconConfig(data) {
|
|
73
73
|
// Note that we can't use `instanceof SVGElement` here,
|
|
74
74
|
// because it'll break during server-side rendering.
|
|
75
|
-
if (!!(/** @type {?} */ (data)).nodeName) {
|
|
76
|
-
this.svgElement = /** @type {?} */ (data);
|
|
75
|
+
if (!!((/** @type {?} */ (data))).nodeName) {
|
|
76
|
+
this.svgElement = (/** @type {?} */ (data));
|
|
77
77
|
}
|
|
78
78
|
else {
|
|
79
|
-
this.url = /** @type {?} */ (data);
|
|
79
|
+
this.url = (/** @type {?} */ (data));
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
return SvgIconConfig;
|
|
@@ -128,18 +128,22 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
128
128
|
*/
|
|
129
129
|
/**
|
|
130
130
|
* Registers an icon by URL in the default namespace.
|
|
131
|
+
* @template THIS
|
|
132
|
+
* @this {THIS}
|
|
131
133
|
* @param {?} iconName Name under which the icon should be registered.
|
|
132
134
|
* @param {?} url
|
|
133
|
-
* @return {
|
|
135
|
+
* @return {THIS}
|
|
134
136
|
*/
|
|
135
137
|
MatIconRegistry.prototype.addSvgIcon = /**
|
|
136
138
|
* Registers an icon by URL in the default namespace.
|
|
139
|
+
* @template THIS
|
|
140
|
+
* @this {THIS}
|
|
137
141
|
* @param {?} iconName Name under which the icon should be registered.
|
|
138
142
|
* @param {?} url
|
|
139
|
-
* @return {
|
|
143
|
+
* @return {THIS}
|
|
140
144
|
*/
|
|
141
145
|
function (iconName, url) {
|
|
142
|
-
return this.addSvgIconInNamespace('', iconName, url);
|
|
146
|
+
return (/** @type {?} */ (this)).addSvgIconInNamespace('', iconName, url);
|
|
143
147
|
};
|
|
144
148
|
/**
|
|
145
149
|
* Registers an icon using an HTML string in the default namespace.
|
|
@@ -148,18 +152,22 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
148
152
|
*/
|
|
149
153
|
/**
|
|
150
154
|
* Registers an icon using an HTML string in the default namespace.
|
|
155
|
+
* @template THIS
|
|
156
|
+
* @this {THIS}
|
|
151
157
|
* @param {?} iconName Name under which the icon should be registered.
|
|
152
158
|
* @param {?} literal SVG source of the icon.
|
|
153
|
-
* @return {
|
|
159
|
+
* @return {THIS}
|
|
154
160
|
*/
|
|
155
161
|
MatIconRegistry.prototype.addSvgIconLiteral = /**
|
|
156
162
|
* Registers an icon using an HTML string in the default namespace.
|
|
163
|
+
* @template THIS
|
|
164
|
+
* @this {THIS}
|
|
157
165
|
* @param {?} iconName Name under which the icon should be registered.
|
|
158
166
|
* @param {?} literal SVG source of the icon.
|
|
159
|
-
* @return {
|
|
167
|
+
* @return {THIS}
|
|
160
168
|
*/
|
|
161
169
|
function (iconName, literal) {
|
|
162
|
-
return this.addSvgIconLiteralInNamespace('', iconName, literal);
|
|
170
|
+
return (/** @type {?} */ (this)).addSvgIconLiteralInNamespace('', iconName, literal);
|
|
163
171
|
};
|
|
164
172
|
/**
|
|
165
173
|
* Registers an icon by URL in the specified namespace.
|
|
@@ -169,20 +177,24 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
169
177
|
*/
|
|
170
178
|
/**
|
|
171
179
|
* Registers an icon by URL in the specified namespace.
|
|
180
|
+
* @template THIS
|
|
181
|
+
* @this {THIS}
|
|
172
182
|
* @param {?} namespace Namespace in which the icon should be registered.
|
|
173
183
|
* @param {?} iconName Name under which the icon should be registered.
|
|
174
184
|
* @param {?} url
|
|
175
|
-
* @return {
|
|
185
|
+
* @return {THIS}
|
|
176
186
|
*/
|
|
177
187
|
MatIconRegistry.prototype.addSvgIconInNamespace = /**
|
|
178
188
|
* Registers an icon by URL in the specified namespace.
|
|
189
|
+
* @template THIS
|
|
190
|
+
* @this {THIS}
|
|
179
191
|
* @param {?} namespace Namespace in which the icon should be registered.
|
|
180
192
|
* @param {?} iconName Name under which the icon should be registered.
|
|
181
193
|
* @param {?} url
|
|
182
|
-
* @return {
|
|
194
|
+
* @return {THIS}
|
|
183
195
|
*/
|
|
184
196
|
function (namespace, iconName, url) {
|
|
185
|
-
return this._addSvgIconConfig(namespace, iconName, new SvgIconConfig(url));
|
|
197
|
+
return (/** @type {?} */ (this))._addSvgIconConfig(namespace, iconName, new SvgIconConfig(url));
|
|
186
198
|
};
|
|
187
199
|
/**
|
|
188
200
|
* Registers an icon using an HTML string in the specified namespace.
|
|
@@ -192,27 +204,31 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
192
204
|
*/
|
|
193
205
|
/**
|
|
194
206
|
* Registers an icon using an HTML string in the specified namespace.
|
|
207
|
+
* @template THIS
|
|
208
|
+
* @this {THIS}
|
|
195
209
|
* @param {?} namespace Namespace in which the icon should be registered.
|
|
196
210
|
* @param {?} iconName Name under which the icon should be registered.
|
|
197
211
|
* @param {?} literal SVG source of the icon.
|
|
198
|
-
* @return {
|
|
212
|
+
* @return {THIS}
|
|
199
213
|
*/
|
|
200
214
|
MatIconRegistry.prototype.addSvgIconLiteralInNamespace = /**
|
|
201
215
|
* Registers an icon using an HTML string in the specified namespace.
|
|
216
|
+
* @template THIS
|
|
217
|
+
* @this {THIS}
|
|
202
218
|
* @param {?} namespace Namespace in which the icon should be registered.
|
|
203
219
|
* @param {?} iconName Name under which the icon should be registered.
|
|
204
220
|
* @param {?} literal SVG source of the icon.
|
|
205
|
-
* @return {
|
|
221
|
+
* @return {THIS}
|
|
206
222
|
*/
|
|
207
223
|
function (namespace, iconName, literal) {
|
|
208
224
|
/** @type {?} */
|
|
209
|
-
var sanitizedLiteral = this._sanitizer.sanitize(SecurityContext.HTML, literal);
|
|
225
|
+
var sanitizedLiteral = (/** @type {?} */ (this))._sanitizer.sanitize(SecurityContext.HTML, literal);
|
|
210
226
|
if (!sanitizedLiteral) {
|
|
211
227
|
throw getMatIconFailedToSanitizeLiteralError(literal);
|
|
212
228
|
}
|
|
213
229
|
/** @type {?} */
|
|
214
|
-
var svgElement = this._createSvgElementForSingleIcon(sanitizedLiteral);
|
|
215
|
-
return this._addSvgIconConfig(namespace, iconName, new SvgIconConfig(svgElement));
|
|
230
|
+
var svgElement = (/** @type {?} */ (this))._createSvgElementForSingleIcon(sanitizedLiteral);
|
|
231
|
+
return (/** @type {?} */ (this))._addSvgIconConfig(namespace, iconName, new SvgIconConfig(svgElement));
|
|
216
232
|
};
|
|
217
233
|
/**
|
|
218
234
|
* Registers an icon set by URL in the default namespace.
|
|
@@ -220,16 +236,20 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
220
236
|
*/
|
|
221
237
|
/**
|
|
222
238
|
* Registers an icon set by URL in the default namespace.
|
|
239
|
+
* @template THIS
|
|
240
|
+
* @this {THIS}
|
|
223
241
|
* @param {?} url
|
|
224
|
-
* @return {
|
|
242
|
+
* @return {THIS}
|
|
225
243
|
*/
|
|
226
244
|
MatIconRegistry.prototype.addSvgIconSet = /**
|
|
227
245
|
* Registers an icon set by URL in the default namespace.
|
|
246
|
+
* @template THIS
|
|
247
|
+
* @this {THIS}
|
|
228
248
|
* @param {?} url
|
|
229
|
-
* @return {
|
|
249
|
+
* @return {THIS}
|
|
230
250
|
*/
|
|
231
251
|
function (url) {
|
|
232
|
-
return this.addSvgIconSetInNamespace('', url);
|
|
252
|
+
return (/** @type {?} */ (this)).addSvgIconSetInNamespace('', url);
|
|
233
253
|
};
|
|
234
254
|
/**
|
|
235
255
|
* Registers an icon set using an HTML string in the default namespace.
|
|
@@ -237,16 +257,20 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
237
257
|
*/
|
|
238
258
|
/**
|
|
239
259
|
* Registers an icon set using an HTML string in the default namespace.
|
|
260
|
+
* @template THIS
|
|
261
|
+
* @this {THIS}
|
|
240
262
|
* @param {?} literal SVG source of the icon set.
|
|
241
|
-
* @return {
|
|
263
|
+
* @return {THIS}
|
|
242
264
|
*/
|
|
243
265
|
MatIconRegistry.prototype.addSvgIconSetLiteral = /**
|
|
244
266
|
* Registers an icon set using an HTML string in the default namespace.
|
|
267
|
+
* @template THIS
|
|
268
|
+
* @this {THIS}
|
|
245
269
|
* @param {?} literal SVG source of the icon set.
|
|
246
|
-
* @return {
|
|
270
|
+
* @return {THIS}
|
|
247
271
|
*/
|
|
248
272
|
function (literal) {
|
|
249
|
-
return this.addSvgIconSetLiteralInNamespace('', literal);
|
|
273
|
+
return (/** @type {?} */ (this)).addSvgIconSetLiteralInNamespace('', literal);
|
|
250
274
|
};
|
|
251
275
|
/**
|
|
252
276
|
* Registers an icon set by URL in the specified namespace.
|
|
@@ -255,18 +279,22 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
255
279
|
*/
|
|
256
280
|
/**
|
|
257
281
|
* Registers an icon set by URL in the specified namespace.
|
|
282
|
+
* @template THIS
|
|
283
|
+
* @this {THIS}
|
|
258
284
|
* @param {?} namespace Namespace in which to register the icon set.
|
|
259
285
|
* @param {?} url
|
|
260
|
-
* @return {
|
|
286
|
+
* @return {THIS}
|
|
261
287
|
*/
|
|
262
288
|
MatIconRegistry.prototype.addSvgIconSetInNamespace = /**
|
|
263
289
|
* Registers an icon set by URL in the specified namespace.
|
|
290
|
+
* @template THIS
|
|
291
|
+
* @this {THIS}
|
|
264
292
|
* @param {?} namespace Namespace in which to register the icon set.
|
|
265
293
|
* @param {?} url
|
|
266
|
-
* @return {
|
|
294
|
+
* @return {THIS}
|
|
267
295
|
*/
|
|
268
296
|
function (namespace, url) {
|
|
269
|
-
return this._addSvgIconSetConfig(namespace, new SvgIconConfig(url));
|
|
297
|
+
return (/** @type {?} */ (this))._addSvgIconSetConfig(namespace, new SvgIconConfig(url));
|
|
270
298
|
};
|
|
271
299
|
/**
|
|
272
300
|
* Registers an icon set using an HTML string in the specified namespace.
|
|
@@ -275,25 +303,29 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
275
303
|
*/
|
|
276
304
|
/**
|
|
277
305
|
* Registers an icon set using an HTML string in the specified namespace.
|
|
306
|
+
* @template THIS
|
|
307
|
+
* @this {THIS}
|
|
278
308
|
* @param {?} namespace Namespace in which to register the icon set.
|
|
279
309
|
* @param {?} literal SVG source of the icon set.
|
|
280
|
-
* @return {
|
|
310
|
+
* @return {THIS}
|
|
281
311
|
*/
|
|
282
312
|
MatIconRegistry.prototype.addSvgIconSetLiteralInNamespace = /**
|
|
283
313
|
* Registers an icon set using an HTML string in the specified namespace.
|
|
314
|
+
* @template THIS
|
|
315
|
+
* @this {THIS}
|
|
284
316
|
* @param {?} namespace Namespace in which to register the icon set.
|
|
285
317
|
* @param {?} literal SVG source of the icon set.
|
|
286
|
-
* @return {
|
|
318
|
+
* @return {THIS}
|
|
287
319
|
*/
|
|
288
320
|
function (namespace, literal) {
|
|
289
321
|
/** @type {?} */
|
|
290
|
-
var sanitizedLiteral = this._sanitizer.sanitize(SecurityContext.HTML, literal);
|
|
322
|
+
var sanitizedLiteral = (/** @type {?} */ (this))._sanitizer.sanitize(SecurityContext.HTML, literal);
|
|
291
323
|
if (!sanitizedLiteral) {
|
|
292
324
|
throw getMatIconFailedToSanitizeLiteralError(literal);
|
|
293
325
|
}
|
|
294
326
|
/** @type {?} */
|
|
295
|
-
var svgElement = this._svgElementFromString(sanitizedLiteral);
|
|
296
|
-
return this._addSvgIconSetConfig(namespace, new SvgIconConfig(svgElement));
|
|
327
|
+
var svgElement = (/** @type {?} */ (this))._svgElementFromString(sanitizedLiteral);
|
|
328
|
+
return (/** @type {?} */ (this))._addSvgIconSetConfig(namespace, new SvgIconConfig(svgElement));
|
|
297
329
|
};
|
|
298
330
|
/**
|
|
299
331
|
* Defines an alias for a CSS class name to be used for icon fonts. Creating an matIcon
|
|
@@ -308,23 +340,27 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
308
340
|
* component with the alias as the fontSet input will cause the class name to be applied
|
|
309
341
|
* to the `<mat-icon>` element.
|
|
310
342
|
*
|
|
343
|
+
* @template THIS
|
|
344
|
+
* @this {THIS}
|
|
311
345
|
* @param {?} alias Alias for the font.
|
|
312
346
|
* @param {?=} className Class name override to be used instead of the alias.
|
|
313
|
-
* @return {
|
|
347
|
+
* @return {THIS}
|
|
314
348
|
*/
|
|
315
349
|
MatIconRegistry.prototype.registerFontClassAlias = /**
|
|
316
350
|
* Defines an alias for a CSS class name to be used for icon fonts. Creating an matIcon
|
|
317
351
|
* component with the alias as the fontSet input will cause the class name to be applied
|
|
318
352
|
* to the `<mat-icon>` element.
|
|
319
353
|
*
|
|
354
|
+
* @template THIS
|
|
355
|
+
* @this {THIS}
|
|
320
356
|
* @param {?} alias Alias for the font.
|
|
321
357
|
* @param {?=} className Class name override to be used instead of the alias.
|
|
322
|
-
* @return {
|
|
358
|
+
* @return {THIS}
|
|
323
359
|
*/
|
|
324
360
|
function (alias, className) {
|
|
325
361
|
if (className === void 0) { className = alias; }
|
|
326
|
-
this._fontCssClassesByAlias.set(alias, className);
|
|
327
|
-
return this;
|
|
362
|
+
(/** @type {?} */ (this))._fontCssClassesByAlias.set(alias, className);
|
|
363
|
+
return (/** @type {?} */ (this));
|
|
328
364
|
};
|
|
329
365
|
/**
|
|
330
366
|
* Returns the CSS class name associated with the alias by a previous call to
|
|
@@ -355,19 +391,23 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
355
391
|
* Sets the CSS class name to be used for icon fonts when an `<mat-icon>` component does not
|
|
356
392
|
* have a fontSet input value, and is not loading an icon by name or URL.
|
|
357
393
|
*
|
|
394
|
+
* @template THIS
|
|
395
|
+
* @this {THIS}
|
|
358
396
|
* @param {?} className
|
|
359
|
-
* @return {
|
|
397
|
+
* @return {THIS}
|
|
360
398
|
*/
|
|
361
399
|
MatIconRegistry.prototype.setDefaultFontSetClass = /**
|
|
362
400
|
* Sets the CSS class name to be used for icon fonts when an `<mat-icon>` component does not
|
|
363
401
|
* have a fontSet input value, and is not loading an icon by name or URL.
|
|
364
402
|
*
|
|
403
|
+
* @template THIS
|
|
404
|
+
* @this {THIS}
|
|
365
405
|
* @param {?} className
|
|
366
|
-
* @return {
|
|
406
|
+
* @return {THIS}
|
|
367
407
|
*/
|
|
368
408
|
function (className) {
|
|
369
|
-
this._defaultFontSetClass = className;
|
|
370
|
-
return this;
|
|
409
|
+
(/** @type {?} */ (this))._defaultFontSetClass = className;
|
|
410
|
+
return (/** @type {?} */ (this));
|
|
371
411
|
};
|
|
372
412
|
/**
|
|
373
413
|
* Returns the CSS class name to be used for icon fonts when an `<mat-icon>` component does not
|
|
@@ -424,7 +464,7 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
424
464
|
if (cachedIcon) {
|
|
425
465
|
return of(cloneSvg(cachedIcon));
|
|
426
466
|
}
|
|
427
|
-
return this._loadSvgIconFromConfig(new SvgIconConfig(safeUrl)).pipe(tap(function (svg) { return _this._cachedIconsByUrl.set(/** @type {?} */ (
|
|
467
|
+
return this._loadSvgIconFromConfig(new SvgIconConfig(safeUrl)).pipe(tap(function (svg) { return _this._cachedIconsByUrl.set((/** @type {?} */ (url)), svg); }), map(function (svg) { return cloneSvg(svg); }));
|
|
428
468
|
};
|
|
429
469
|
/**
|
|
430
470
|
* Returns an Observable that produces the icon (as an `<svg>` DOM element) with the given name
|
|
@@ -454,6 +494,7 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
454
494
|
*/
|
|
455
495
|
function (name, namespace) {
|
|
456
496
|
if (namespace === void 0) { namespace = ''; }
|
|
497
|
+
// Return (copy of) cached icon if possible.
|
|
457
498
|
/** @type {?} */
|
|
458
499
|
var key = iconKey(namespace, name);
|
|
459
500
|
/** @type {?} */
|
|
@@ -461,6 +502,7 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
461
502
|
if (config) {
|
|
462
503
|
return this._getSvgFromConfig(config);
|
|
463
504
|
}
|
|
505
|
+
// See if we have any icon sets registered for the namespace.
|
|
464
506
|
/** @type {?} */
|
|
465
507
|
var iconSetConfigs = this._iconSetConfigs.get(namespace);
|
|
466
508
|
if (iconSetConfigs) {
|
|
@@ -470,11 +512,16 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
470
512
|
};
|
|
471
513
|
/**
|
|
472
514
|
* Returns the cached icon for a SvgIconConfig if available, or fetches it from its URL if not.
|
|
515
|
+
*/
|
|
516
|
+
/**
|
|
517
|
+
* Returns the cached icon for a SvgIconConfig if available, or fetches it from its URL if not.
|
|
518
|
+
* @private
|
|
473
519
|
* @param {?} config
|
|
474
520
|
* @return {?}
|
|
475
521
|
*/
|
|
476
522
|
MatIconRegistry.prototype._getSvgFromConfig = /**
|
|
477
523
|
* Returns the cached icon for a SvgIconConfig if available, or fetches it from its URL if not.
|
|
524
|
+
* @private
|
|
478
525
|
* @param {?} config
|
|
479
526
|
* @return {?}
|
|
480
527
|
*/
|
|
@@ -495,6 +542,15 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
495
542
|
* that have not been cached, and searches again after all fetches are completed.
|
|
496
543
|
* The returned Observable produces the SVG element if possible, and throws
|
|
497
544
|
* an error if no icon with the specified name can be found.
|
|
545
|
+
*/
|
|
546
|
+
/**
|
|
547
|
+
* Attempts to find an icon with the specified name in any of the SVG icon sets.
|
|
548
|
+
* First searches the available cached icons for a nested element with a matching name, and
|
|
549
|
+
* if found copies the element to a new `<svg>` element. If not found, fetches all icon sets
|
|
550
|
+
* that have not been cached, and searches again after all fetches are completed.
|
|
551
|
+
* The returned Observable produces the SVG element if possible, and throws
|
|
552
|
+
* an error if no icon with the specified name can be found.
|
|
553
|
+
* @private
|
|
498
554
|
* @param {?} name
|
|
499
555
|
* @param {?} iconSetConfigs
|
|
500
556
|
* @return {?}
|
|
@@ -506,12 +562,15 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
506
562
|
* that have not been cached, and searches again after all fetches are completed.
|
|
507
563
|
* The returned Observable produces the SVG element if possible, and throws
|
|
508
564
|
* an error if no icon with the specified name can be found.
|
|
565
|
+
* @private
|
|
509
566
|
* @param {?} name
|
|
510
567
|
* @param {?} iconSetConfigs
|
|
511
568
|
* @return {?}
|
|
512
569
|
*/
|
|
513
570
|
function (name, iconSetConfigs) {
|
|
514
571
|
var _this = this;
|
|
572
|
+
// For all the icon set SVG elements we've fetched, see if any contain an icon with the
|
|
573
|
+
// requested name.
|
|
515
574
|
/** @type {?} */
|
|
516
575
|
var namedIcon = this._extractIconWithNameFromAnySet(name, iconSetConfigs);
|
|
517
576
|
if (namedIcon) {
|
|
@@ -520,6 +579,8 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
520
579
|
// it from the icon set.
|
|
521
580
|
return of(namedIcon);
|
|
522
581
|
}
|
|
582
|
+
// Not found in any cached icon sets. If there are icon sets with URLs that we haven't
|
|
583
|
+
// fetched, fetch them now and look for iconName in the results.
|
|
523
584
|
/** @type {?} */
|
|
524
585
|
var iconSetFetchRequests = iconSetConfigs
|
|
525
586
|
.filter(function (iconSetConfig) { return !iconSetConfig.svgElement; })
|
|
@@ -548,6 +609,12 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
548
609
|
* Searches the cached SVG elements for the given icon sets for a nested icon element whose "id"
|
|
549
610
|
* tag matches the specified name. If found, copies the nested element to a new SVG element and
|
|
550
611
|
* returns it. Returns null if no matching element is found.
|
|
612
|
+
*/
|
|
613
|
+
/**
|
|
614
|
+
* Searches the cached SVG elements for the given icon sets for a nested icon element whose "id"
|
|
615
|
+
* tag matches the specified name. If found, copies the nested element to a new SVG element and
|
|
616
|
+
* returns it. Returns null if no matching element is found.
|
|
617
|
+
* @private
|
|
551
618
|
* @param {?} iconName
|
|
552
619
|
* @param {?} iconSetConfigs
|
|
553
620
|
* @return {?}
|
|
@@ -556,6 +623,7 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
556
623
|
* Searches the cached SVG elements for the given icon sets for a nested icon element whose "id"
|
|
557
624
|
* tag matches the specified name. If found, copies the nested element to a new SVG element and
|
|
558
625
|
* returns it. Returns null if no matching element is found.
|
|
626
|
+
* @private
|
|
559
627
|
* @param {?} iconName
|
|
560
628
|
* @param {?} iconSetConfigs
|
|
561
629
|
* @return {?}
|
|
@@ -578,12 +646,18 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
578
646
|
/**
|
|
579
647
|
* Loads the content of the icon URL specified in the SvgIconConfig and creates an SVG element
|
|
580
648
|
* from it.
|
|
649
|
+
*/
|
|
650
|
+
/**
|
|
651
|
+
* Loads the content of the icon URL specified in the SvgIconConfig and creates an SVG element
|
|
652
|
+
* from it.
|
|
653
|
+
* @private
|
|
581
654
|
* @param {?} config
|
|
582
655
|
* @return {?}
|
|
583
656
|
*/
|
|
584
657
|
MatIconRegistry.prototype._loadSvgIconFromConfig = /**
|
|
585
658
|
* Loads the content of the icon URL specified in the SvgIconConfig and creates an SVG element
|
|
586
659
|
* from it.
|
|
660
|
+
* @private
|
|
587
661
|
* @param {?} config
|
|
588
662
|
* @return {?}
|
|
589
663
|
*/
|
|
@@ -595,12 +669,18 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
595
669
|
/**
|
|
596
670
|
* Loads the content of the icon set URL specified in the SvgIconConfig and creates an SVG element
|
|
597
671
|
* from it.
|
|
672
|
+
*/
|
|
673
|
+
/**
|
|
674
|
+
* Loads the content of the icon set URL specified in the SvgIconConfig and creates an SVG element
|
|
675
|
+
* from it.
|
|
676
|
+
* @private
|
|
598
677
|
* @param {?} config
|
|
599
678
|
* @return {?}
|
|
600
679
|
*/
|
|
601
680
|
MatIconRegistry.prototype._loadSvgIconSetFromConfig = /**
|
|
602
681
|
* Loads the content of the icon set URL specified in the SvgIconConfig and creates an SVG element
|
|
603
682
|
* from it.
|
|
683
|
+
* @private
|
|
604
684
|
* @param {?} config
|
|
605
685
|
* @return {?}
|
|
606
686
|
*/
|
|
@@ -621,11 +701,16 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
621
701
|
};
|
|
622
702
|
/**
|
|
623
703
|
* Creates a DOM element from the given SVG string, and adds default attributes.
|
|
704
|
+
*/
|
|
705
|
+
/**
|
|
706
|
+
* Creates a DOM element from the given SVG string, and adds default attributes.
|
|
707
|
+
* @private
|
|
624
708
|
* @param {?} responseText
|
|
625
709
|
* @return {?}
|
|
626
710
|
*/
|
|
627
711
|
MatIconRegistry.prototype._createSvgElementForSingleIcon = /**
|
|
628
712
|
* Creates a DOM element from the given SVG string, and adds default attributes.
|
|
713
|
+
* @private
|
|
629
714
|
* @param {?} responseText
|
|
630
715
|
* @return {?}
|
|
631
716
|
*/
|
|
@@ -639,6 +724,12 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
639
724
|
* Searches the cached element of the given SvgIconConfig for a nested icon element whose "id"
|
|
640
725
|
* tag matches the specified name. If found, copies the nested element to a new SVG element and
|
|
641
726
|
* returns it. Returns null if no matching element is found.
|
|
727
|
+
*/
|
|
728
|
+
/**
|
|
729
|
+
* Searches the cached element of the given SvgIconConfig for a nested icon element whose "id"
|
|
730
|
+
* tag matches the specified name. If found, copies the nested element to a new SVG element and
|
|
731
|
+
* returns it. Returns null if no matching element is found.
|
|
732
|
+
* @private
|
|
642
733
|
* @param {?} iconSet
|
|
643
734
|
* @param {?} iconName
|
|
644
735
|
* @return {?}
|
|
@@ -647,6 +738,7 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
647
738
|
* Searches the cached element of the given SvgIconConfig for a nested icon element whose "id"
|
|
648
739
|
* tag matches the specified name. If found, copies the nested element to a new SVG element and
|
|
649
740
|
* returns it. Returns null if no matching element is found.
|
|
741
|
+
* @private
|
|
650
742
|
* @param {?} iconSet
|
|
651
743
|
* @param {?} iconName
|
|
652
744
|
* @return {?}
|
|
@@ -657,13 +749,15 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
657
749
|
if (!iconSource) {
|
|
658
750
|
return null;
|
|
659
751
|
}
|
|
752
|
+
// Clone the element and remove the ID to prevent multiple elements from being added
|
|
753
|
+
// to the page with the same ID.
|
|
660
754
|
/** @type {?} */
|
|
661
|
-
var iconElement = /** @type {?} */ (iconSource.cloneNode(true));
|
|
755
|
+
var iconElement = (/** @type {?} */ (iconSource.cloneNode(true)));
|
|
662
756
|
iconElement.removeAttribute('id');
|
|
663
757
|
// If the icon node is itself an <svg> node, clone and return it directly. If not, set it as
|
|
664
758
|
// the content of a new <svg> node.
|
|
665
759
|
if (iconElement.nodeName.toLowerCase() === 'svg') {
|
|
666
|
-
return this._setSvgAttributes(/** @type {?} */ (iconElement));
|
|
760
|
+
return this._setSvgAttributes((/** @type {?} */ (iconElement)));
|
|
667
761
|
}
|
|
668
762
|
// If the node is a <symbol>, it won't be rendered so we have to convert it into <svg>. Note
|
|
669
763
|
// that the same could be achieved by referring to it via <use href="#id">, however the <use>
|
|
@@ -671,6 +765,11 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
671
765
|
if (iconElement.nodeName.toLowerCase() === 'symbol') {
|
|
672
766
|
return this._setSvgAttributes(this._toSvgElement(iconElement));
|
|
673
767
|
}
|
|
768
|
+
// createElement('SVG') doesn't work as expected; the DOM ends up with
|
|
769
|
+
// the correct nodes, but the SVG content doesn't render. Instead we
|
|
770
|
+
// have to create an empty SVG node using innerHTML and append its content.
|
|
771
|
+
// Elements created using DOMParser.parseFromString have the same problem.
|
|
772
|
+
// http://stackoverflow.com/questions/23003278/svg-innerhtml-in-firefox-can-not-display
|
|
674
773
|
/** @type {?} */
|
|
675
774
|
var svg = this._svgElementFromString('<svg></svg>');
|
|
676
775
|
// Clone the node so we don't remove it from the parent icon set element.
|
|
@@ -679,11 +778,16 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
679
778
|
};
|
|
680
779
|
/**
|
|
681
780
|
* Creates a DOM element from the given SVG string.
|
|
781
|
+
*/
|
|
782
|
+
/**
|
|
783
|
+
* Creates a DOM element from the given SVG string.
|
|
784
|
+
* @private
|
|
682
785
|
* @param {?} str
|
|
683
786
|
* @return {?}
|
|
684
787
|
*/
|
|
685
788
|
MatIconRegistry.prototype._svgElementFromString = /**
|
|
686
789
|
* Creates a DOM element from the given SVG string.
|
|
790
|
+
* @private
|
|
687
791
|
* @param {?} str
|
|
688
792
|
* @return {?}
|
|
689
793
|
*/
|
|
@@ -692,7 +796,7 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
692
796
|
var div = this._document.createElement('DIV');
|
|
693
797
|
div.innerHTML = str;
|
|
694
798
|
/** @type {?} */
|
|
695
|
-
var svg = /** @type {?} */ (div.querySelector('svg'));
|
|
799
|
+
var svg = (/** @type {?} */ (div.querySelector('svg')));
|
|
696
800
|
if (!svg) {
|
|
697
801
|
throw Error('<svg> tag not found');
|
|
698
802
|
}
|
|
@@ -700,11 +804,16 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
700
804
|
};
|
|
701
805
|
/**
|
|
702
806
|
* Converts an element into an SVG node by cloning all of its children.
|
|
807
|
+
*/
|
|
808
|
+
/**
|
|
809
|
+
* Converts an element into an SVG node by cloning all of its children.
|
|
810
|
+
* @private
|
|
703
811
|
* @param {?} element
|
|
704
812
|
* @return {?}
|
|
705
813
|
*/
|
|
706
814
|
MatIconRegistry.prototype._toSvgElement = /**
|
|
707
815
|
* Converts an element into an SVG node by cloning all of its children.
|
|
816
|
+
* @private
|
|
708
817
|
* @param {?} element
|
|
709
818
|
* @return {?}
|
|
710
819
|
*/
|
|
@@ -720,11 +829,16 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
720
829
|
};
|
|
721
830
|
/**
|
|
722
831
|
* Sets the default attributes for an SVG element to be used as an icon.
|
|
832
|
+
*/
|
|
833
|
+
/**
|
|
834
|
+
* Sets the default attributes for an SVG element to be used as an icon.
|
|
835
|
+
* @private
|
|
723
836
|
* @param {?} svg
|
|
724
837
|
* @return {?}
|
|
725
838
|
*/
|
|
726
839
|
MatIconRegistry.prototype._setSvgAttributes = /**
|
|
727
840
|
* Sets the default attributes for an SVG element to be used as an icon.
|
|
841
|
+
* @private
|
|
728
842
|
* @param {?} svg
|
|
729
843
|
* @return {?}
|
|
730
844
|
*/
|
|
@@ -739,12 +853,18 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
739
853
|
/**
|
|
740
854
|
* Returns an Observable which produces the string contents of the given URL. Results may be
|
|
741
855
|
* cached, so future calls with the same URL may not cause another HTTP request.
|
|
856
|
+
*/
|
|
857
|
+
/**
|
|
858
|
+
* Returns an Observable which produces the string contents of the given URL. Results may be
|
|
859
|
+
* cached, so future calls with the same URL may not cause another HTTP request.
|
|
860
|
+
* @private
|
|
742
861
|
* @param {?} safeUrl
|
|
743
862
|
* @return {?}
|
|
744
863
|
*/
|
|
745
864
|
MatIconRegistry.prototype._fetchUrl = /**
|
|
746
865
|
* Returns an Observable which produces the string contents of the given URL. Results may be
|
|
747
866
|
* cached, so future calls with the same URL may not cause another HTTP request.
|
|
867
|
+
* @private
|
|
748
868
|
* @param {?} safeUrl
|
|
749
869
|
* @return {?}
|
|
750
870
|
*/
|
|
@@ -761,11 +881,16 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
761
881
|
if (!url) {
|
|
762
882
|
throw getMatIconFailedToSanitizeUrlError(safeUrl);
|
|
763
883
|
}
|
|
884
|
+
// Store in-progress fetches to avoid sending a duplicate request for a URL when there is
|
|
885
|
+
// already a request in progress for that URL. It's necessary to call share() on the
|
|
886
|
+
// Observable returned by http.get() so that multiple subscribers don't cause multiple XHRs.
|
|
764
887
|
/** @type {?} */
|
|
765
888
|
var inProgressFetch = this._inProgressUrlFetches.get(url);
|
|
766
889
|
if (inProgressFetch) {
|
|
767
890
|
return inProgressFetch;
|
|
768
891
|
}
|
|
892
|
+
// TODO(jelbourn): for some reason, the `finalize` operator "loses" the generic type on the
|
|
893
|
+
// Observable. Figure out why and fix it.
|
|
769
894
|
/** @type {?} */
|
|
770
895
|
var req = this._httpClient.get(url, { responseType: 'text' }).pipe(finalize(function () { return _this._inProgressUrlFetches.delete(url); }), share());
|
|
771
896
|
this._inProgressUrlFetches.set(url, req);
|
|
@@ -773,44 +898,67 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
773
898
|
};
|
|
774
899
|
/**
|
|
775
900
|
* Registers an icon config by name in the specified namespace.
|
|
901
|
+
* @param namespace Namespace in which to register the icon config.
|
|
902
|
+
* @param iconName Name under which to register the config.
|
|
903
|
+
* @param config Config to be registered.
|
|
904
|
+
*/
|
|
905
|
+
/**
|
|
906
|
+
* Registers an icon config by name in the specified namespace.
|
|
907
|
+
* @private
|
|
908
|
+
* @template THIS
|
|
909
|
+
* @this {THIS}
|
|
776
910
|
* @param {?} namespace Namespace in which to register the icon config.
|
|
777
911
|
* @param {?} iconName Name under which to register the config.
|
|
778
912
|
* @param {?} config Config to be registered.
|
|
779
|
-
* @return {
|
|
913
|
+
* @return {THIS}
|
|
780
914
|
*/
|
|
781
915
|
MatIconRegistry.prototype._addSvgIconConfig = /**
|
|
782
916
|
* Registers an icon config by name in the specified namespace.
|
|
917
|
+
* @private
|
|
918
|
+
* @template THIS
|
|
919
|
+
* @this {THIS}
|
|
783
920
|
* @param {?} namespace Namespace in which to register the icon config.
|
|
784
921
|
* @param {?} iconName Name under which to register the config.
|
|
785
922
|
* @param {?} config Config to be registered.
|
|
786
|
-
* @return {
|
|
923
|
+
* @return {THIS}
|
|
787
924
|
*/
|
|
788
925
|
function (namespace, iconName, config) {
|
|
789
|
-
this._svgIconConfigs.set(iconKey(namespace, iconName), config);
|
|
790
|
-
return this;
|
|
926
|
+
(/** @type {?} */ (this))._svgIconConfigs.set(iconKey(namespace, iconName), config);
|
|
927
|
+
return (/** @type {?} */ (this));
|
|
791
928
|
};
|
|
792
929
|
/**
|
|
793
930
|
* Registers an icon set config in the specified namespace.
|
|
931
|
+
* @param namespace Namespace in which to register the icon config.
|
|
932
|
+
* @param config Config to be registered.
|
|
933
|
+
*/
|
|
934
|
+
/**
|
|
935
|
+
* Registers an icon set config in the specified namespace.
|
|
936
|
+
* @private
|
|
937
|
+
* @template THIS
|
|
938
|
+
* @this {THIS}
|
|
794
939
|
* @param {?} namespace Namespace in which to register the icon config.
|
|
795
940
|
* @param {?} config Config to be registered.
|
|
796
|
-
* @return {
|
|
941
|
+
* @return {THIS}
|
|
797
942
|
*/
|
|
798
943
|
MatIconRegistry.prototype._addSvgIconSetConfig = /**
|
|
799
944
|
* Registers an icon set config in the specified namespace.
|
|
945
|
+
* @private
|
|
946
|
+
* @template THIS
|
|
947
|
+
* @this {THIS}
|
|
800
948
|
* @param {?} namespace Namespace in which to register the icon config.
|
|
801
949
|
* @param {?} config Config to be registered.
|
|
802
|
-
* @return {
|
|
950
|
+
* @return {THIS}
|
|
803
951
|
*/
|
|
804
952
|
function (namespace, config) {
|
|
805
953
|
/** @type {?} */
|
|
806
|
-
var configNamespace = this._iconSetConfigs.get(namespace);
|
|
954
|
+
var configNamespace = (/** @type {?} */ (this))._iconSetConfigs.get(namespace);
|
|
807
955
|
if (configNamespace) {
|
|
808
956
|
configNamespace.push(config);
|
|
809
957
|
}
|
|
810
958
|
else {
|
|
811
|
-
this._iconSetConfigs.set(namespace, [config]);
|
|
959
|
+
(/** @type {?} */ (this))._iconSetConfigs.set(namespace, [config]);
|
|
812
960
|
}
|
|
813
|
-
return this;
|
|
961
|
+
return (/** @type {?} */ (this));
|
|
814
962
|
};
|
|
815
963
|
MatIconRegistry.decorators = [
|
|
816
964
|
{ type: Injectable, args: [{ providedIn: 'root' },] },
|
|
@@ -835,9 +983,10 @@ var MatIconRegistry = /** @class */ (function () {
|
|
|
835
983
|
function ICON_REGISTRY_PROVIDER_FACTORY(parentRegistry, httpClient, sanitizer, document) {
|
|
836
984
|
return parentRegistry || new MatIconRegistry(httpClient, sanitizer, document);
|
|
837
985
|
}
|
|
838
|
-
/**
|
|
986
|
+
/**
|
|
839
987
|
* \@docs-private
|
|
840
|
-
|
|
988
|
+
* @type {?}
|
|
989
|
+
*/
|
|
841
990
|
var ICON_REGISTRY_PROVIDER = {
|
|
842
991
|
// If there is already an MatIconRegistry available, use that. Otherwise, provide a new one.
|
|
843
992
|
provide: MatIconRegistry,
|
|
@@ -845,7 +994,7 @@ var ICON_REGISTRY_PROVIDER = {
|
|
|
845
994
|
[new Optional(), new SkipSelf(), MatIconRegistry],
|
|
846
995
|
[new Optional(), HttpClient],
|
|
847
996
|
DomSanitizer,
|
|
848
|
-
[new Optional(), /** @type {?} */ (DOCUMENT)],
|
|
997
|
+
[new Optional(), (/** @type {?} */ (DOCUMENT))],
|
|
849
998
|
],
|
|
850
999
|
useFactory: ICON_REGISTRY_PROVIDER_FACTORY,
|
|
851
1000
|
};
|
|
@@ -855,7 +1004,7 @@ var ICON_REGISTRY_PROVIDER = {
|
|
|
855
1004
|
* @return {?}
|
|
856
1005
|
*/
|
|
857
1006
|
function cloneSvg(svg) {
|
|
858
|
-
return /** @type {?} */ (svg.cloneNode(true));
|
|
1007
|
+
return (/** @type {?} */ (svg.cloneNode(true)));
|
|
859
1008
|
}
|
|
860
1009
|
/**
|
|
861
1010
|
* Returns the cache key to use for an icon namespace and name.
|
|
@@ -869,12 +1018,15 @@ function iconKey(namespace, name) {
|
|
|
869
1018
|
|
|
870
1019
|
/**
|
|
871
1020
|
* @fileoverview added by tsickle
|
|
872
|
-
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
|
|
1021
|
+
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
873
1022
|
*/
|
|
1023
|
+
// Boilerplate for applying mixins to MatIcon.
|
|
874
1024
|
/**
|
|
875
1025
|
* \@docs-private
|
|
876
1026
|
*/
|
|
877
|
-
var
|
|
1027
|
+
var
|
|
1028
|
+
// Boilerplate for applying mixins to MatIcon.
|
|
1029
|
+
/**
|
|
878
1030
|
* \@docs-private
|
|
879
1031
|
*/
|
|
880
1032
|
MatIconBase = /** @class */ (function () {
|
|
@@ -885,11 +1037,12 @@ MatIconBase = /** @class */ (function () {
|
|
|
885
1037
|
}());
|
|
886
1038
|
/** @type {?} */
|
|
887
1039
|
var _MatIconMixinBase = mixinColor(MatIconBase);
|
|
888
|
-
/**
|
|
1040
|
+
/**
|
|
889
1041
|
* Injection token used to provide the current location to `MatIcon`.
|
|
890
1042
|
* Used to handle server-side rendering and to stub out during unit tests.
|
|
891
1043
|
* \@docs-private
|
|
892
|
-
|
|
1044
|
+
* @type {?}
|
|
1045
|
+
*/
|
|
893
1046
|
var MAT_ICON_LOCATION = new InjectionToken('mat-icon-location', {
|
|
894
1047
|
providedIn: 'root',
|
|
895
1048
|
factory: MAT_ICON_LOCATION_FACTORY
|
|
@@ -909,9 +1062,10 @@ function MAT_ICON_LOCATION_FACTORY() {
|
|
|
909
1062
|
getPathname: function () { return _location ? (_location.pathname + _location.search) : ''; }
|
|
910
1063
|
};
|
|
911
1064
|
}
|
|
912
|
-
/**
|
|
1065
|
+
/**
|
|
913
1066
|
* SVG attributes that accept a FuncIRI (e.g. `url(<something>)`).
|
|
914
|
-
|
|
1067
|
+
* @type {?}
|
|
1068
|
+
*/
|
|
915
1069
|
var funcIriAttributes = [
|
|
916
1070
|
'clip-path',
|
|
917
1071
|
'color-profile',
|
|
@@ -927,13 +1081,15 @@ var funcIriAttributes = [
|
|
|
927
1081
|
'stroke'
|
|
928
1082
|
];
|
|
929
1083
|
var ɵ0 = function (attr) { return "[" + attr + "]"; };
|
|
930
|
-
/**
|
|
1084
|
+
/**
|
|
931
1085
|
* Selector that can be used to find all elements that are using a `FuncIRI`.
|
|
932
|
-
|
|
1086
|
+
* @type {?}
|
|
1087
|
+
*/
|
|
933
1088
|
var funcIriAttributeSelector = funcIriAttributes.map(ɵ0).join(', ');
|
|
934
|
-
/**
|
|
1089
|
+
/**
|
|
935
1090
|
* Regex that can be used to extract the id out of a FuncIRI.
|
|
936
|
-
|
|
1091
|
+
* @type {?}
|
|
1092
|
+
*/
|
|
937
1093
|
var funcIriPattern = /^url\(['"]?#(.*?)['"]?\)$/;
|
|
938
1094
|
/**
|
|
939
1095
|
* Component to display an icon. It can be used in the following ways:
|
|
@@ -964,11 +1120,7 @@ var funcIriPattern = /^url\(['"]?#(.*?)['"]?\)$/;
|
|
|
964
1120
|
*/
|
|
965
1121
|
var MatIcon = /** @class */ (function (_super) {
|
|
966
1122
|
__extends(MatIcon, _super);
|
|
967
|
-
function MatIcon(elementRef, _iconRegistry, ariaHidden,
|
|
968
|
-
* @deprecated `location` parameter to be made required.
|
|
969
|
-
* @breaking-change 8.0.0
|
|
970
|
-
*/
|
|
971
|
-
_location) {
|
|
1123
|
+
function MatIcon(elementRef, _iconRegistry, ariaHidden, _location) {
|
|
972
1124
|
var _this = _super.call(this, elementRef) || this;
|
|
973
1125
|
_this._iconRegistry = _iconRegistry;
|
|
974
1126
|
_this._location = _location;
|
|
@@ -1049,6 +1201,20 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1049
1201
|
* 'penguin' -> ['', 'penguin']
|
|
1050
1202
|
* null -> ['', '']
|
|
1051
1203
|
* 'a:b:c' -> (throws Error)`
|
|
1204
|
+
*/
|
|
1205
|
+
/**
|
|
1206
|
+
* Splits an svgIcon binding value into its icon set and icon name components.
|
|
1207
|
+
* Returns a 2-element array of [(icon set), (icon name)].
|
|
1208
|
+
* The separator for the two fields is ':'. If there is no separator, an empty
|
|
1209
|
+
* string is returned for the icon set and the entire value is returned for
|
|
1210
|
+
* the icon name. If the argument is falsy, returns an array of two empty strings.
|
|
1211
|
+
* Throws an error if the name contains two or more ':' separators.
|
|
1212
|
+
* Examples:
|
|
1213
|
+
* `'social:cake' -> ['social', 'cake']
|
|
1214
|
+
* 'penguin' -> ['', 'penguin']
|
|
1215
|
+
* null -> ['', '']
|
|
1216
|
+
* 'a:b:c' -> (throws Error)`
|
|
1217
|
+
* @private
|
|
1052
1218
|
* @param {?} iconName
|
|
1053
1219
|
* @return {?}
|
|
1054
1220
|
*/
|
|
@@ -1064,6 +1230,7 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1064
1230
|
* 'penguin' -> ['', 'penguin']
|
|
1065
1231
|
* null -> ['', '']
|
|
1066
1232
|
* 'a:b:c' -> (throws Error)`
|
|
1233
|
+
* @private
|
|
1067
1234
|
* @param {?} iconName
|
|
1068
1235
|
* @return {?}
|
|
1069
1236
|
*/
|
|
@@ -1075,7 +1242,7 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1075
1242
|
var parts = iconName.split(':');
|
|
1076
1243
|
switch (parts.length) {
|
|
1077
1244
|
case 1: return ['', parts[0]]; // Use default namespace.
|
|
1078
|
-
case 2: return /** @type {?} */ (parts);
|
|
1245
|
+
case 2: return (/** @type {?} */ (parts));
|
|
1079
1246
|
default: throw Error("Invalid icon name: \"" + iconName + "\"");
|
|
1080
1247
|
}
|
|
1081
1248
|
};
|
|
@@ -1090,7 +1257,7 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1090
1257
|
function (changes) {
|
|
1091
1258
|
var _this = this;
|
|
1092
1259
|
// Only update the inline SVG icon if the inputs changed, to avoid unnecessary DOM operations.
|
|
1093
|
-
if (changes
|
|
1260
|
+
if (changes.svgIcon) {
|
|
1094
1261
|
if (this.svgIcon) {
|
|
1095
1262
|
var _a = this._splitIconName(this.svgIcon), namespace = _a[0], iconName = _a[1];
|
|
1096
1263
|
this._iconRegistry.getNamedSvgIcon(iconName, namespace).pipe(take(1)).subscribe(function (svg) { return _this._setSvgElement(svg); }, function (err) { return console.log("Error retrieving icon: " + err.message); });
|
|
@@ -1152,26 +1319,33 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1152
1319
|
}
|
|
1153
1320
|
};
|
|
1154
1321
|
/**
|
|
1322
|
+
* @private
|
|
1155
1323
|
* @return {?}
|
|
1156
1324
|
*/
|
|
1157
1325
|
MatIcon.prototype._usingFontIcon = /**
|
|
1326
|
+
* @private
|
|
1158
1327
|
* @return {?}
|
|
1159
1328
|
*/
|
|
1160
1329
|
function () {
|
|
1161
1330
|
return !this.svgIcon;
|
|
1162
1331
|
};
|
|
1163
1332
|
/**
|
|
1333
|
+
* @private
|
|
1164
1334
|
* @param {?} svg
|
|
1165
1335
|
* @return {?}
|
|
1166
1336
|
*/
|
|
1167
1337
|
MatIcon.prototype._setSvgElement = /**
|
|
1338
|
+
* @private
|
|
1168
1339
|
* @param {?} svg
|
|
1169
1340
|
* @return {?}
|
|
1170
1341
|
*/
|
|
1171
1342
|
function (svg) {
|
|
1172
1343
|
this._clearSvgElement();
|
|
1344
|
+
// Workaround for IE11 and Edge ignoring `style` tags inside dynamically-created SVGs.
|
|
1345
|
+
// See: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/10898469/
|
|
1346
|
+
// Do this before inserting the element into the DOM, in order to avoid a style recalculation.
|
|
1173
1347
|
/** @type {?} */
|
|
1174
|
-
var styleTags = /** @type {?} */ (svg.querySelectorAll('style'));
|
|
1348
|
+
var styleTags = (/** @type {?} */ (svg.querySelectorAll('style')));
|
|
1175
1349
|
for (var i = 0; i < styleTags.length; i++) {
|
|
1176
1350
|
styleTags[i].textContent += ' ';
|
|
1177
1351
|
}
|
|
@@ -1187,9 +1361,11 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1187
1361
|
this._elementRef.nativeElement.appendChild(svg);
|
|
1188
1362
|
};
|
|
1189
1363
|
/**
|
|
1364
|
+
* @private
|
|
1190
1365
|
* @return {?}
|
|
1191
1366
|
*/
|
|
1192
1367
|
MatIcon.prototype._clearSvgElement = /**
|
|
1368
|
+
* @private
|
|
1193
1369
|
* @return {?}
|
|
1194
1370
|
*/
|
|
1195
1371
|
function () {
|
|
@@ -1213,9 +1389,11 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1213
1389
|
}
|
|
1214
1390
|
};
|
|
1215
1391
|
/**
|
|
1392
|
+
* @private
|
|
1216
1393
|
* @return {?}
|
|
1217
1394
|
*/
|
|
1218
1395
|
MatIcon.prototype._updateFontIconClasses = /**
|
|
1396
|
+
* @private
|
|
1219
1397
|
* @return {?}
|
|
1220
1398
|
*/
|
|
1221
1399
|
function () {
|
|
@@ -1251,6 +1429,12 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1251
1429
|
* Cleans up a value to be used as a fontIcon or fontSet.
|
|
1252
1430
|
* Since the value ends up being assigned as a CSS class, we
|
|
1253
1431
|
* have to trim the value and omit space-separated values.
|
|
1432
|
+
*/
|
|
1433
|
+
/**
|
|
1434
|
+
* Cleans up a value to be used as a fontIcon or fontSet.
|
|
1435
|
+
* Since the value ends up being assigned as a CSS class, we
|
|
1436
|
+
* have to trim the value and omit space-separated values.
|
|
1437
|
+
* @private
|
|
1254
1438
|
* @param {?} value
|
|
1255
1439
|
* @return {?}
|
|
1256
1440
|
*/
|
|
@@ -1258,6 +1442,7 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1258
1442
|
* Cleans up a value to be used as a fontIcon or fontSet.
|
|
1259
1443
|
* Since the value ends up being assigned as a CSS class, we
|
|
1260
1444
|
* have to trim the value and omit space-separated values.
|
|
1445
|
+
* @private
|
|
1261
1446
|
* @param {?} value
|
|
1262
1447
|
* @return {?}
|
|
1263
1448
|
*/
|
|
@@ -1268,6 +1453,12 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1268
1453
|
* Prepends the current path to all elements that have an attribute pointing to a `FuncIRI`
|
|
1269
1454
|
* reference. This is required because WebKit browsers require references to be prefixed with
|
|
1270
1455
|
* the current path, if the page has a `base` tag.
|
|
1456
|
+
*/
|
|
1457
|
+
/**
|
|
1458
|
+
* Prepends the current path to all elements that have an attribute pointing to a `FuncIRI`
|
|
1459
|
+
* reference. This is required because WebKit browsers require references to be prefixed with
|
|
1460
|
+
* the current path, if the page has a `base` tag.
|
|
1461
|
+
* @private
|
|
1271
1462
|
* @param {?} path
|
|
1272
1463
|
* @return {?}
|
|
1273
1464
|
*/
|
|
@@ -1275,6 +1466,7 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1275
1466
|
* Prepends the current path to all elements that have an attribute pointing to a `FuncIRI`
|
|
1276
1467
|
* reference. This is required because WebKit browsers require references to be prefixed with
|
|
1277
1468
|
* the current path, if the page has a `base` tag.
|
|
1469
|
+
* @private
|
|
1278
1470
|
* @param {?} path
|
|
1279
1471
|
* @return {?}
|
|
1280
1472
|
*/
|
|
@@ -1292,12 +1484,18 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1292
1484
|
/**
|
|
1293
1485
|
* Caches the children of an SVG element that have `url()`
|
|
1294
1486
|
* references that we need to prefix with the current path.
|
|
1487
|
+
*/
|
|
1488
|
+
/**
|
|
1489
|
+
* Caches the children of an SVG element that have `url()`
|
|
1490
|
+
* references that we need to prefix with the current path.
|
|
1491
|
+
* @private
|
|
1295
1492
|
* @param {?} element
|
|
1296
1493
|
* @return {?}
|
|
1297
1494
|
*/
|
|
1298
1495
|
MatIcon.prototype._cacheChildrenWithExternalReferences = /**
|
|
1299
1496
|
* Caches the children of an SVG element that have `url()`
|
|
1300
1497
|
* references that we need to prefix with the current path.
|
|
1498
|
+
* @private
|
|
1301
1499
|
* @param {?} element
|
|
1302
1500
|
* @return {?}
|
|
1303
1501
|
*/
|
|
@@ -1321,8 +1519,8 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1321
1519
|
if (!attributes) {
|
|
1322
1520
|
attributes = [];
|
|
1323
1521
|
elements.set(elementWithReference, attributes);
|
|
1324
|
-
}
|
|
1325
|
-
((attributes)).push({ name: attr, value: match[1] });
|
|
1522
|
+
}
|
|
1523
|
+
(/** @type {?} */ (attributes)).push({ name: attr, value: match[1] });
|
|
1326
1524
|
}
|
|
1327
1525
|
});
|
|
1328
1526
|
};
|
|
@@ -1340,6 +1538,7 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1340
1538
|
'role': 'img',
|
|
1341
1539
|
'class': 'mat-icon',
|
|
1342
1540
|
'[class.mat-icon-inline]': 'inline',
|
|
1541
|
+
'[class.mat-icon-no-color]': 'color !== "primary" && color !== "accent" && color !== "warn"',
|
|
1343
1542
|
},
|
|
1344
1543
|
encapsulation: ViewEncapsulation.None,
|
|
1345
1544
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
@@ -1363,7 +1562,7 @@ var MatIcon = /** @class */ (function (_super) {
|
|
|
1363
1562
|
|
|
1364
1563
|
/**
|
|
1365
1564
|
* @fileoverview added by tsickle
|
|
1366
|
-
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
|
|
1565
|
+
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1367
1566
|
*/
|
|
1368
1567
|
var MatIconModule = /** @class */ (function () {
|
|
1369
1568
|
function MatIconModule() {
|
|
@@ -1380,12 +1579,12 @@ var MatIconModule = /** @class */ (function () {
|
|
|
1380
1579
|
|
|
1381
1580
|
/**
|
|
1382
1581
|
* @fileoverview added by tsickle
|
|
1383
|
-
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
|
|
1582
|
+
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1384
1583
|
*/
|
|
1385
1584
|
|
|
1386
1585
|
/**
|
|
1387
1586
|
* @fileoverview added by tsickle
|
|
1388
|
-
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
|
|
1587
|
+
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
1389
1588
|
*/
|
|
1390
1589
|
|
|
1391
1590
|
export { MatIconModule, MAT_ICON_LOCATION_FACTORY, MatIconBase, _MatIconMixinBase, MAT_ICON_LOCATION, MatIcon, getMatIconNameNotFoundError, getMatIconNoHttpProviderError, getMatIconFailedToSanitizeUrlError, getMatIconFailedToSanitizeLiteralError, ICON_REGISTRY_PROVIDER_FACTORY, MatIconRegistry, ICON_REGISTRY_PROVIDER };
|