mirror of
				https://github.com/richard-loafle/fuse-angular.git
				synced 2025-10-30 23:43:33 +00:00 
			
		
		
		
	Updated Angular Material element examples
This commit is contained in:
		
							parent
							
								
									c9168717a4
								
							
						
					
					
						commit
						8c4a714d39
					
				| @ -1,3 +1,4 @@ | ||||
| import { AutocompleteAutoActiveFirstOptionExample } from 'assets/angular-material-examples/autocomplete-auto-active-first-option/autocomplete-auto-active-first-option-example'; | ||||
| import { AutocompleteDisplayExample } from 'assets/angular-material-examples/autocomplete-display/autocomplete-display-example'; | ||||
| import { AutocompleteFilterExample } from 'assets/angular-material-examples/autocomplete-filter/autocomplete-filter-example'; | ||||
| import { AutocompleteOverviewExample } from 'assets/angular-material-examples/autocomplete-overview/autocomplete-overview-example'; | ||||
| @ -37,13 +38,12 @@ import { MyTelInput, FormFieldCustomControlExample } from 'assets/angular-materi | ||||
| import { FormFieldErrorExample } from 'assets/angular-material-examples/form-field-error/form-field-error-example'; | ||||
| import { FormFieldHintExample } from 'assets/angular-material-examples/form-field-hint/form-field-hint-example'; | ||||
| import { FormFieldOverviewExample } from 'assets/angular-material-examples/form-field-overview/form-field-overview-example'; | ||||
| import { FormFieldPlaceholderExample } from 'assets/angular-material-examples/form-field-placeholder/form-field-placeholder-example'; | ||||
| import { FormFieldPrefixSuffixExample } from 'assets/angular-material-examples/form-field-prefix-suffix/form-field-prefix-suffix-example'; | ||||
| import { FormFieldThemingExample } from 'assets/angular-material-examples/form-field-theming/form-field-theming-example'; | ||||
| import { GridListDynamicExample } from 'assets/angular-material-examples/grid-list-dynamic/grid-list-dynamic-example'; | ||||
| import { GridListOverviewExample } from 'assets/angular-material-examples/grid-list-overview/grid-list-overview-example'; | ||||
| import { IconOverviewExample } from 'assets/angular-material-examples/icon-overview/icon-overview-example'; | ||||
| import { IconSvgExample } from 'assets/angular-material-examples/icon-svg/icon-svg-example'; | ||||
| import { IconSvgExample } from 'assets/angular-material-examples/icon-svg-example/icon-svg-example'; | ||||
| import { InputAutosizeTextareaExample } from 'assets/angular-material-examples/input-autosize-textarea/input-autosize-textarea-example'; | ||||
| import { InputClearableExample } from 'assets/angular-material-examples/input-clearable/input-clearable-example'; | ||||
| import { InputErrorStateMatcherExample } from 'assets/angular-material-examples/input-error-state-matcher/input-error-state-matcher-example'; | ||||
| @ -81,7 +81,6 @@ import { SelectOverviewExample } from 'assets/angular-material-examples/select-o | ||||
| import { SelectPanelClassExample } from 'assets/angular-material-examples/select-panel-class/select-panel-class-example'; | ||||
| import { SelectResetExample } from 'assets/angular-material-examples/select-reset/select-reset-example'; | ||||
| import { SelectValueBindingExample } from 'assets/angular-material-examples/select-value-binding/select-value-binding-example'; | ||||
| import { SidenavFabExample } from 'assets/angular-material-examples/sidenav-fab/sidenav-fab-example'; | ||||
| import { SidenavOverviewExample } from 'assets/angular-material-examples/sidenav-overview/sidenav-overview-example'; | ||||
| import { SlideToggleConfigurableExample } from 'assets/angular-material-examples/slide-toggle-configurable/slide-toggle-configurable-example'; | ||||
| import { SlideToggleFormsExample } from 'assets/angular-material-examples/slide-toggle-forms/slide-toggle-forms-example'; | ||||
| @ -104,9 +103,19 @@ import { ToolbarMultirowExample } from 'assets/angular-material-examples/toolbar | ||||
| import { ToolbarOverviewExample } from 'assets/angular-material-examples/toolbar-overview/toolbar-overview-example'; | ||||
| import { TooltipOverviewExample } from 'assets/angular-material-examples/tooltip-overview/tooltip-overview-example'; | ||||
| import { TooltipPositionExample } from 'assets/angular-material-examples/tooltip-position/tooltip-position-example'; | ||||
| import { DatepickerCustomIconExample } from 'assets/angular-material-examples/datepicker-custom-icon/datepicker-custom-icon-example'; | ||||
| import { SidenavAutosizeExample } from 'assets/angular-material-examples/sidenav-autosize/sidenav-autosize-example'; | ||||
| import { SnackBarPositionExample } from 'assets/angular-material-examples/snack-bar-position/snack-bar-position-example'; | ||||
| import { TableSelectionExample } from 'assets/angular-material-examples/table-selection/table-selection-example'; | ||||
| import { TooltipDelayExample } from 'assets/angular-material-examples/tooltip-delay/tooltip-delay-example'; | ||||
| import { TooltipManualExample } from 'assets/angular-material-examples/tooltip-manual/tooltip-manual-example'; | ||||
| import { TooltipModifiedDefaultsExample } from 'assets/angular-material-examples/tooltip-modified-defaults/tooltip-modified-defaults-example'; | ||||
| import { DividerOverviewExample } from 'assets/angular-material-examples/divider-overview/divider-overview-example'; | ||||
| import { FormFieldLabelExample } from 'assets/angular-material-examples/form-field-label/form-field-label-example'; | ||||
| 
 | ||||
| export const COMPONENT_MAP = { | ||||
|     'autocomplete'    : [ | ||||
|         'autocomplete-auto-active-first-option', | ||||
|         'autocomplete-simple', | ||||
|         'autocomplete-filter', | ||||
|         'autocomplete-display', | ||||
| @ -118,6 +127,7 @@ export const COMPONENT_MAP = { | ||||
|     ], | ||||
|     'datepicker'      : [ | ||||
|         'datepicker-overview', | ||||
|         'datepicker-custom-icon', | ||||
|         'datepicker-start-view', | ||||
|         'datepicker-value', | ||||
|         'datepicker-min-max', | ||||
| @ -130,9 +140,11 @@ export const COMPONENT_MAP = { | ||||
|         'datepicker-moment', | ||||
|         'datepicker-formats' | ||||
|     ], | ||||
|     'divider'         : [ | ||||
|         'divider-overview' | ||||
|     ], | ||||
|     'form-field'      : [ | ||||
|         'form-field-overview', | ||||
|         'form-field-placeholder', | ||||
|         'form-field-label', | ||||
|         'form-field-hint', | ||||
|         'form-field-error', | ||||
|         'form-field-prefix-suffix', | ||||
| @ -183,7 +195,7 @@ export const COMPONENT_MAP = { | ||||
|     ], | ||||
|     'sidenav'         : [ | ||||
|         'sidenav-overview', | ||||
|         'sidenav-fab' | ||||
|         'sidenav-autosize' | ||||
|     ], | ||||
|     'toolbar'         : [ | ||||
|         'toolbar-overview', | ||||
| @ -252,14 +264,19 @@ export const COMPONENT_MAP = { | ||||
|     ], | ||||
|     'tooltip'         : [ | ||||
|         'tooltip-overview', | ||||
|         'tooltip-position' | ||||
|         'tooltip-position', | ||||
|         'tooltip-delay', | ||||
|         'tooltip-manual', | ||||
|         'tooltip-modified-defaults' | ||||
|     ], | ||||
|     'snackbar'        : [ | ||||
|         'snack-bar-overview' | ||||
|         'snack-bar-overview', | ||||
|         'snack-bar-position' | ||||
|     ], | ||||
|     'data-table'      : [ | ||||
|         'table-overview', | ||||
|         'table-basic', | ||||
|         'table-selection', | ||||
|         'table-filtering', | ||||
|         'table-http' | ||||
|     ], | ||||
| @ -273,645 +290,694 @@ export const COMPONENT_MAP = { | ||||
| }; | ||||
| 
 | ||||
| export const EXAMPLE_COMPONENTS = { | ||||
|     'autocomplete-display'         : { | ||||
|     'autocomplete-auto-active-first-option': { | ||||
|         title          : 'Highlight the first autocomplete option', | ||||
|         component      : AutocompleteAutoActiveFirstOptionExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'autocomplete-display'                 : { | ||||
|         title          : 'Display value autocomplete', | ||||
|         component      : AutocompleteDisplayExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'autocomplete-filter'          : { | ||||
|     'autocomplete-filter'                  : { | ||||
|         title          : 'Filter autocomplete', | ||||
|         component      : AutocompleteFilterExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'autocomplete-overview'        : { | ||||
|     'autocomplete-overview'                : { | ||||
|         title          : 'Autocomplete overview', | ||||
|         component      : AutocompleteOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'autocomplete-simple'          : { | ||||
|     'autocomplete-simple'                  : { | ||||
|         title          : 'Simple autocomplete', | ||||
|         component      : AutocompleteSimpleExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'button-overview'              : { | ||||
|     'button-overview'                      : { | ||||
|         title          : 'Basic buttons', | ||||
|         component      : ButtonOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'button-toggle-exclusive'      : { | ||||
|     'button-toggle-exclusive'              : { | ||||
|         title          : 'Exclusive selection', | ||||
|         component      : ButtonToggleExclusiveExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'button-toggle-overview'       : { | ||||
|     'button-toggle-overview'               : { | ||||
|         title          : 'Basic button-toggles', | ||||
|         component      : ButtonToggleOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'button-types'                 : { | ||||
|     'button-types'                         : { | ||||
|         title          : 'Button varieties', | ||||
|         component      : ButtonTypesExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'card-fancy'                   : { | ||||
|     'card-fancy'                           : { | ||||
|         title          : 'Card with multiple sections', | ||||
|         component      : CardFancyExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'card-overview'                : { | ||||
|     'card-overview'                        : { | ||||
|         title          : 'Basic cards', | ||||
|         component      : CardOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'cdk-table-basic'              : { | ||||
|     'cdk-table-basic'                      : { | ||||
|         title          : 'Basic CDK data-table', | ||||
|         component      : CdkTableBasicExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'checkbox-configurable'        : { | ||||
|     'checkbox-configurable'                : { | ||||
|         title          : 'Configurable checkbox', | ||||
|         component      : CheckboxConfigurableExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'checkbox-overview'            : { | ||||
|     'checkbox-overview'                    : { | ||||
|         title          : 'Basic checkboxes', | ||||
|         component      : CheckboxOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'chips-input'                  : { | ||||
|     'chips-input'                          : { | ||||
|         title          : 'Chips with input', | ||||
|         component      : ChipsInputExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'chips-overview'               : { | ||||
|     'chips-overview'                       : { | ||||
|         title          : 'Basic chips', | ||||
|         component      : ChipsOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'chips-stacked'                : { | ||||
|     'chips-stacked'                        : { | ||||
|         title          : 'Stacked chips', | ||||
|         component      : ChipsStackedExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-api'               : { | ||||
|         title          : 'Datepicker open method ', | ||||
|     'datepicker-api'                       : { | ||||
|         title          : 'Datepicker open method', | ||||
|         component      : DatepickerApiExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-disabled'          : { | ||||
|         title          : 'Disabled datepicker ', | ||||
|     'datepicker-custom-icon'               : { | ||||
|         title          : 'Datepicker custom icon', | ||||
|         component      : DatepickerCustomIconExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-disabled'                  : { | ||||
|         title          : 'Disabled datepicker', | ||||
|         component      : DatepickerDisabledExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-events'            : { | ||||
|         title          : 'Datepicker input and change events ', | ||||
|     'datepicker-events'                    : { | ||||
|         title          : 'Datepicker input and change events', | ||||
|         component      : DatepickerEventsExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-filter'            : { | ||||
|         title          : 'Datepicker with filter validation ', | ||||
|     'datepicker-filter'                    : { | ||||
|         title          : 'Datepicker with filter validation', | ||||
|         component      : DatepickerFilterExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-formats'           : { | ||||
|         title          : 'Datepicker with custom formats ', | ||||
|     'datepicker-formats'                   : { | ||||
|         title          : 'Datepicker with custom formats', | ||||
|         component      : DatepickerFormatsExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-locale'            : { | ||||
|         title          : 'Datepicker with different locale ', | ||||
|     'datepicker-locale'                    : { | ||||
|         title          : 'Datepicker with different locale', | ||||
|         component      : DatepickerLocaleExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-min-max'           : { | ||||
|         title          : 'Datepicker with min & max validation ', | ||||
|     'datepicker-min-max'                   : { | ||||
|         title          : 'Datepicker with min & max validation', | ||||
|         component      : DatepickerMinMaxExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-moment'            : { | ||||
|     'datepicker-moment'                    : { | ||||
|         title          : 'Datepicker that uses Moment.js dates ', | ||||
|         component      : DatepickerMomentExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-overview'          : { | ||||
|     'datepicker-overview'                  : { | ||||
|         title          : 'Basic datepicker ', | ||||
|         component      : DatepickerOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-start-view'        : { | ||||
|     'datepicker-start-view'                : { | ||||
|         title          : 'Datepicker start date ', | ||||
|         component      : DatepickerStartViewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-touch'             : { | ||||
|     'datepicker-touch'                     : { | ||||
|         title          : 'Datepicker touch UI ', | ||||
|         component      : DatepickerTouchExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'datepicker-value'             : { | ||||
|     'datepicker-value'                     : { | ||||
|         title          : 'Datepicker selected value ', | ||||
|         component      : DatepickerValueExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'dialog-content'               : { | ||||
|     'dialog-content'                       : { | ||||
|         title          : 'Dialog with header, scrollable content and actions', | ||||
|         component      : DialogContentExample, | ||||
|         additionalFiles: ['dialog-content-example-dialog.html'], | ||||
|         selectorName   : 'DialogContentExample, DialogContentExampleDialog' | ||||
|     }, | ||||
|     'dialog-data'                  : { | ||||
|     'dialog-data'                          : { | ||||
|         title          : 'Injecting data when opening a dialog', | ||||
|         component      : DialogDataExample, | ||||
|         additionalFiles: ['dialog-data-example-dialog.html'], | ||||
|         selectorName   : 'DialogDataExample, DialogDataExampleDialog' | ||||
|     }, | ||||
|     'dialog-elements'              : { | ||||
|     'dialog-elements'                      : { | ||||
|         title          : 'Dialog elements', | ||||
|         component      : DialogElementsExample, | ||||
|         additionalFiles: ['dialog-elements-example-dialog.html'], | ||||
|         selectorName   : 'DialogElementsExample, DialogElementsExampleDialog' | ||||
|     }, | ||||
|     'dialog-overview'              : { | ||||
|     'dialog-overview'                      : { | ||||
|         title          : 'Dialog Overview', | ||||
|         component      : DialogOverviewExample, | ||||
|         additionalFiles: ['dialog-overview-example-dialog.html'], | ||||
|         selectorName   : 'DialogOverviewExample, DialogOverviewExampleDialog' | ||||
|     }, | ||||
|     'elevation-overview'           : { | ||||
|     'divider-overview'                     : { | ||||
|         title          : 'Basic divider', | ||||
|         component      : DividerOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'elevation-overview'                   : { | ||||
|         title          : 'Elevation CSS classes', | ||||
|         component      : ElevationOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'expansion-overview'           : { | ||||
|     'expansion-overview'                   : { | ||||
|         title          : 'Basic expansion panel', | ||||
|         component      : ExpansionOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'expansion-steps'              : { | ||||
|     'expansion-steps'                      : { | ||||
|         title          : 'Expansion panel as accordion', | ||||
|         component      : ExpansionStepsExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'form-field-custom-control'    : { | ||||
|     'form-field-custom-control'            : { | ||||
|         title          : 'Form field with custom telephone number input control. ', | ||||
|         component      : FormFieldCustomControlExample, | ||||
|         additionalFiles: ['form-field-custom-control-example.html'], | ||||
|         selectorName   : 'FormFieldCustomControlExample, MyTelInput' | ||||
|     }, | ||||
|     'form-field-error'             : { | ||||
|     'form-field-error'                     : { | ||||
|         title          : 'Form field with error messages ', | ||||
|         component      : FormFieldErrorExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'form-field-hint'              : { | ||||
|     'form-field-hint'                      : { | ||||
|         title          : 'Form field with hints ', | ||||
|         component      : FormFieldHintExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'form-field-overview'          : { | ||||
|     'form-field-overview'                  : { | ||||
|         title          : 'Simple form field ', | ||||
|         component      : FormFieldOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'form-field-placeholder'       : { | ||||
|         title          : 'Form field with placeholder ', | ||||
|         component      : FormFieldPlaceholderExample, | ||||
|     'form-field-label'                     : { | ||||
|         title          : 'Form field with label', | ||||
|         component      : FormFieldLabelExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'form-field-prefix-suffix'     : { | ||||
|     'form-field-prefix-suffix'             : { | ||||
|         title          : 'Form field with prefix & suffix ', | ||||
|         component      : FormFieldPrefixSuffixExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'form-field-theming'           : { | ||||
|     'form-field-theming'                   : { | ||||
|         title          : 'Form field theming ', | ||||
|         component      : FormFieldThemingExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'grid-list-dynamic'            : { | ||||
|     'grid-list-dynamic'                    : { | ||||
|         title          : 'Dynamic grid-list', | ||||
|         component      : GridListDynamicExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'grid-list-overview'           : { | ||||
|     'grid-list-overview'                   : { | ||||
|         title          : 'Basic grid-list', | ||||
|         component      : GridListOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'icon-overview'                : { | ||||
|     'icon-overview'                        : { | ||||
|         title          : 'Basic icons', | ||||
|         component      : IconOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'icon-svg'                     : { | ||||
|     'icon-svg'                             : { | ||||
|         title          : 'SVG icons', | ||||
|         component      : IconSvgExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'input-autosize-textarea'      : { | ||||
|     'input-autosize-textarea'              : { | ||||
|         title          : 'Auto-resizing textarea ', | ||||
|         component      : InputAutosizeTextareaExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'input-clearable'              : { | ||||
|     'input-clearable'                      : { | ||||
|         title          : 'Input with a clear button', | ||||
|         component      : InputClearableExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'input-error-state-matcher'    : { | ||||
|     'input-error-state-matcher'            : { | ||||
|         title          : 'Input with a custom ErrorStateMatcher ', | ||||
|         component      : InputErrorStateMatcherExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'input-errors'                 : { | ||||
|     'input-errors'                         : { | ||||
|         title          : 'Input with error messages', | ||||
|         component      : InputErrorsExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'input-form'                   : { | ||||
|     'input-form'                           : { | ||||
|         title          : 'Inputs in a form', | ||||
|         component      : InputFormExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'input-hint'                   : { | ||||
|     'input-hint'                           : { | ||||
|         title          : 'Input with hints', | ||||
|         component      : InputHintExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'input-overview'               : { | ||||
|     'input-overview'                       : { | ||||
|         title          : 'Basic Inputs', | ||||
|         component      : InputOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'input-prefix-suffix'          : { | ||||
|     'input-prefix-suffix'                  : { | ||||
|         title          : 'Inputs with prefixes and suffixes', | ||||
|         component      : InputPrefixSuffixExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'list-overview'                : { | ||||
|     'list-overview'                        : { | ||||
|         title          : 'Basic list', | ||||
|         component      : ListOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'list-sections'                : { | ||||
|     'list-sections'                        : { | ||||
|         title          : 'List with sections', | ||||
|         component      : ListSectionsExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'list-selection'               : { | ||||
|     'list-selection'                       : { | ||||
|         title          : 'List with selection', | ||||
|         component      : ListSelectionExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'menu-icons'                   : { | ||||
|     'menu-icons'                           : { | ||||
|         title          : 'Menu with icons', | ||||
|         component      : MenuIconsExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'menu-overview'                : { | ||||
|     'menu-overview'                        : { | ||||
|         title          : 'Basic menu', | ||||
|         component      : MenuOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'nested-menu'                  : { | ||||
|     'nested-menu'                          : { | ||||
|         title          : 'Nested menu', | ||||
|         component      : NestedMenuExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'paginator-configurable'       : { | ||||
|     'paginator-configurable'               : { | ||||
|         title          : 'Configurable paginator', | ||||
|         component      : PaginatorConfigurableExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'paginator-overview'           : { | ||||
|     'paginator-overview'                   : { | ||||
|         title          : 'Paginator', | ||||
|         component      : PaginatorOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'progress-bar-buffer'          : { | ||||
|     'progress-bar-buffer'                  : { | ||||
|         title          : 'Buffer progress-bar', | ||||
|         component      : ProgressBarBufferExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'progress-bar-configurable'    : { | ||||
|     'progress-bar-configurable'            : { | ||||
|         title          : 'Configurable progress-bar', | ||||
|         component      : ProgressBarConfigurableExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'progress-bar-determinate'     : { | ||||
|     'progress-bar-determinate'             : { | ||||
|         title          : 'Determinate progress-bar', | ||||
|         component      : ProgressBarDeterminateExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'progress-bar-indeterminate'   : { | ||||
|     'progress-bar-indeterminate'           : { | ||||
|         title          : 'Indeterminate progress-bar', | ||||
|         component      : ProgressBarIndeterminateExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'progress-bar-query'           : { | ||||
|     'progress-bar-query'                   : { | ||||
|         title          : 'Query progress-bar', | ||||
|         component      : ProgressBarQueryExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'progress-spinner-configurable': { | ||||
|     'progress-spinner-configurable'        : { | ||||
|         title          : 'Configurable progress spinner', | ||||
|         component      : ProgressSpinnerConfigurableExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'progress-spinner-overview'    : { | ||||
|     'progress-spinner-overview'            : { | ||||
|         title          : 'Basic progress-spinner', | ||||
|         component      : ProgressSpinnerOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'radio-ng-model'               : { | ||||
|     'radio-ng-model'                       : { | ||||
|         title          : 'Radios with ngModel', | ||||
|         component      : RadioNgModelExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'radio-overview'               : { | ||||
|     'radio-overview'                       : { | ||||
|         title          : 'Basic radios', | ||||
|         component      : RadioOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-custom-trigger'        : { | ||||
|     'select-custom-trigger'                : { | ||||
|         title          : 'Select with custom trigger text ', | ||||
|         component      : SelectCustomTriggerExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-disabled'              : { | ||||
|     'select-disabled'                      : { | ||||
|         title          : 'Disabled select ', | ||||
|         component      : SelectDisabledExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-error-state-matcher'   : { | ||||
|     'select-error-state-matcher'           : { | ||||
|         title          : 'Select with a custom ErrorStateMatcher ', | ||||
|         component      : SelectErrorStateMatcherExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-form'                  : { | ||||
|     'select-form'                          : { | ||||
|         title          : 'Select in a form', | ||||
|         component      : SelectFormExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-hint-error'            : { | ||||
|     'select-hint-error'                    : { | ||||
|         title          : 'Select with form field features ', | ||||
|         component      : SelectHintErrorExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-multiple'              : { | ||||
|     'select-multiple'                      : { | ||||
|         title          : 'Select with multiple selection ', | ||||
|         component      : SelectMultipleExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-no-ripple'             : { | ||||
|     'select-no-ripple'                     : { | ||||
|         title          : 'Select with no option ripple ', | ||||
|         component      : SelectNoRippleExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-optgroup'              : { | ||||
|     'select-optgroup'                      : { | ||||
|         title          : 'Select with option groups ', | ||||
|         component      : SelectOptgroupExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-overview'              : { | ||||
|     'select-overview'                      : { | ||||
|         title          : 'Basic select', | ||||
|         component      : SelectOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-panel-class'           : { | ||||
|     'select-panel-class'                   : { | ||||
|         title          : 'Select with custom panel styling', | ||||
|         component      : SelectPanelClassExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-reset'                 : { | ||||
|     'select-reset'                         : { | ||||
|         title          : 'Select with reset option ', | ||||
|         component      : SelectResetExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'select-value-binding'         : { | ||||
|     'select-value-binding'                 : { | ||||
|         title          : 'Select with 2-way value binding ', | ||||
|         component      : SelectValueBindingExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'sidenav-fab'                  : { | ||||
|         title          : 'Sidenav with a FAB', | ||||
|         component      : SidenavFabExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'sidenav-overview'             : { | ||||
|     'sidenav-overview'                     : { | ||||
|         title          : 'Basic sidenav', | ||||
|         component      : SidenavOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'slide-toggle-configurable'    : { | ||||
|     'sidenav-autosize'                     : { | ||||
|         title          : 'Autosize sidenav', | ||||
|         component      : SidenavAutosizeExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'slide-toggle-configurable'            : { | ||||
|         title          : 'Configurable slide-toggle', | ||||
|         component      : SlideToggleConfigurableExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'slide-toggle-forms'           : { | ||||
|     'slide-toggle-forms'                   : { | ||||
|         title          : 'Slide-toggle with forms', | ||||
|         component      : SlideToggleFormsExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'slide-toggle-overview'        : { | ||||
|     'slide-toggle-overview'                : { | ||||
|         title          : 'Basic slide-toggles', | ||||
|         component      : SlideToggleOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'slider-configurable'          : { | ||||
|     'slider-configurable'                  : { | ||||
|         title          : 'Configurable slider', | ||||
|         component      : SliderConfigurableExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'slider-overview'              : { | ||||
|     'slider-overview'                      : { | ||||
|         title          : 'Basic slider', | ||||
|         component      : SliderOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'snack-bar-component'          : { | ||||
|     'snack-bar-component'                  : { | ||||
|         title          : 'Snack-bar with a custom component', | ||||
|         component      : SnackBarComponentExample, | ||||
|         additionalFiles: ['snack-bar-component-example-snack.html'], | ||||
|         selectorName   : 'SnackBarComponentExample, PizzaPartyComponent' | ||||
|     }, | ||||
|     'snack-bar-overview'           : { | ||||
|     'snack-bar-overview'                   : { | ||||
|         title          : 'Basic snack-bar', | ||||
|         component      : SnackBarOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'sort-overview'                : { | ||||
|     'snack-bar-position'                   : { | ||||
|         title          : 'Snack-bar with different positions', | ||||
|         component      : SnackBarPositionExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'sort-overview'                        : { | ||||
|         title          : 'Sorting overview', | ||||
|         component      : SortOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'stepper-overview'             : { | ||||
|     'stepper-overview'                     : { | ||||
|         title          : 'Stepper overview', | ||||
|         component      : StepperOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'table-basic'                  : { | ||||
|     'table-basic'                          : { | ||||
|         title          : 'Basic table', | ||||
|         component      : TableBasicExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'table-filtering'              : { | ||||
|     'table-selection'                      : { | ||||
|         title          : 'Table with selection', | ||||
|         component      : TableSelectionExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'table-filtering'                      : { | ||||
|         title          : 'Table with filtering', | ||||
|         component      : TableFilteringExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'table-http'                   : { | ||||
|     'table-http'                           : { | ||||
|         title          : 'Table retrieving data through HTTP', | ||||
|         component      : TableHttpExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'table-overview'               : { | ||||
|     'table-overview'                       : { | ||||
|         title          : 'Data table with sorting, pagination, and filtering.', | ||||
|         component      : TableOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'table-pagination'             : { | ||||
|     'table-pagination'                     : { | ||||
|         title          : 'Table with pagination', | ||||
|         component      : TablePaginationExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'table-sorting'                : { | ||||
|     'table-sorting'                        : { | ||||
|         title          : 'Table with sorting', | ||||
|         component      : TableSortingExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'tabs-overview'                : { | ||||
|     'tabs-overview'                        : { | ||||
|         title          : 'Basic tabs', | ||||
|         component      : TabsOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'tabs-template-label'          : { | ||||
|     'tabs-template-label'                  : { | ||||
|         title          : 'Complex Example', | ||||
|         component      : TabsTemplateLabelExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'toolbar-multirow'             : { | ||||
|     'toolbar-multirow'                     : { | ||||
|         title          : 'Multi-row toolbar', | ||||
|         component      : ToolbarMultirowExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'toolbar-overview'             : { | ||||
|     'toolbar-overview'                     : { | ||||
|         title          : 'Basic toolbar', | ||||
|         component      : ToolbarOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'tooltip-overview'             : { | ||||
|     'tooltip-overview'                     : { | ||||
|         title          : 'Basic tooltip', | ||||
|         component      : TooltipOverviewExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'tooltip-position'             : { | ||||
|     'tooltip-position'                     : { | ||||
|         title          : 'Tooltip with custom position', | ||||
|         component      : TooltipPositionExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'tooltip-delay'                        : { | ||||
|         title          : 'Tooltip with a show and hide delay', | ||||
|         component      : TooltipDelayExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'tooltip-manual'                       : { | ||||
|         title          : 'Tooltip that can be manually shown/hidden.', | ||||
|         component      : TooltipManualExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     }, | ||||
|     'tooltip-modified-defaults'            : { | ||||
|         title          : 'Tooltip with modified defaults', | ||||
|         component      : TooltipModifiedDefaultsExample, | ||||
|         additionalFiles: null, | ||||
|         selectorName   : null | ||||
|     } | ||||
| }; | ||||
| 
 | ||||
| export const EXAMPLE_LIST = [ | ||||
|     AutocompleteAutoActiveFirstOptionExample, | ||||
|     AutocompleteDisplayExample, | ||||
|     AutocompleteFilterExample, | ||||
|     AutocompleteOverviewExample, | ||||
| @ -929,6 +995,7 @@ export const EXAMPLE_LIST = [ | ||||
|     ChipsOverviewExample, | ||||
|     ChipsStackedExample, | ||||
|     DatepickerApiExample, | ||||
|     DatepickerCustomIconExample, | ||||
|     DatepickerDisabledExample, | ||||
|     DatepickerEventsExample, | ||||
|     DatepickerFilterExample, | ||||
| @ -944,6 +1011,7 @@ export const EXAMPLE_LIST = [ | ||||
|     DialogDataExampleDialog, DialogDataExample, | ||||
|     DialogElementsExampleDialog, DialogElementsExample, | ||||
|     DialogOverviewExampleDialog, DialogOverviewExample, | ||||
|     DividerOverviewExample, | ||||
|     ElevationOverviewExample, | ||||
|     ExpansionOverviewExample, | ||||
|     ExpansionStepsExample, | ||||
| @ -951,7 +1019,7 @@ export const EXAMPLE_LIST = [ | ||||
|     FormFieldErrorExample, | ||||
|     FormFieldHintExample, | ||||
|     FormFieldOverviewExample, | ||||
|     FormFieldPlaceholderExample, | ||||
|     FormFieldLabelExample, | ||||
|     FormFieldPrefixSuffixExample, | ||||
|     FormFieldThemingExample, | ||||
|     GridListDynamicExample, | ||||
| @ -995,8 +1063,9 @@ export const EXAMPLE_LIST = [ | ||||
|     SelectPanelClassExample, | ||||
|     SelectResetExample, | ||||
|     SelectValueBindingExample, | ||||
|     SidenavFabExample, | ||||
|     SidenavAutosizeExample, | ||||
|     SidenavOverviewExample, | ||||
|     SnackBarPositionExample, | ||||
|     SlideToggleConfigurableExample, | ||||
|     SlideToggleFormsExample, | ||||
|     SlideToggleOverviewExample, | ||||
| @ -1007,6 +1076,7 @@ export const EXAMPLE_LIST = [ | ||||
|     SortOverviewExample, | ||||
|     StepperOverviewExample, | ||||
|     TableBasicExample, | ||||
|     TableSelectionExample, | ||||
|     TableFilteringExample, | ||||
|     TableHttpExample, | ||||
|     TableOverviewExample, | ||||
| @ -1017,5 +1087,8 @@ export const EXAMPLE_LIST = [ | ||||
|     ToolbarMultirowExample, | ||||
|     ToolbarOverviewExample, | ||||
|     TooltipOverviewExample, | ||||
|     TooltipDelayExample, | ||||
|     TooltipManualExample, | ||||
|     TooltipModifiedDefaultsExample, | ||||
|     TooltipPositionExample | ||||
| ]; | ||||
|  | ||||
| @ -685,6 +685,12 @@ export const navigation = [ | ||||
|                                 'type' : 'item', | ||||
|                                 'url'  : '/components/angular-material/card' | ||||
|                             }, | ||||
|                             { | ||||
|                                 'id'   : 'divider', | ||||
|                                 'title': 'Divider', | ||||
|                                 'type' : 'item', | ||||
|                                 'url'  : '/components/angular-material/divider' | ||||
|                             }, | ||||
|                             { | ||||
|                                 'id'   : 'stepper', | ||||
|                                 'title': 'Stepper', | ||||
|  | ||||
| @ -0,0 +1,9 @@ | ||||
| .example-form { | ||||
|   min-width: 150px; | ||||
|   max-width: 500px; | ||||
|   width: 100%; | ||||
| } | ||||
| 
 | ||||
| .example-full-width { | ||||
|   width: 100%; | ||||
| } | ||||
| @ -0,0 +1,10 @@ | ||||
| <form class="example-form"> | ||||
|   <mat-form-field class="example-full-width"> | ||||
|     <input type="text" placeholder="Pick one" aria-label="Number" matInput [formControl]="myControl" [matAutocomplete]="auto"> | ||||
|     <mat-autocomplete autoActiveFirstOption #auto="matAutocomplete"> | ||||
|       <mat-option *ngFor="let option of filteredOptions | async" [value]="option"> | ||||
|         {{ option }} | ||||
|       </mat-option> | ||||
|     </mat-autocomplete> | ||||
|   </mat-form-field> | ||||
| </form> | ||||
| @ -0,0 +1,31 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| import {FormControl} from '@angular/forms'; | ||||
| import {Observable} from 'rxjs/Observable'; | ||||
| import {startWith} from 'rxjs/operators/startWith'; | ||||
| import {map} from 'rxjs/operators/map'; | ||||
| 
 | ||||
| /** | ||||
|  * @title Highlight the first autocomplete option | ||||
|  */ | ||||
| @Component({ | ||||
|   selector: 'autocomplete-auto-active-first-option-example', | ||||
|   templateUrl: 'autocomplete-auto-active-first-option-example.html', | ||||
|   styleUrls: ['autocomplete-auto-active-first-option-example.css'] | ||||
| }) | ||||
| export class AutocompleteAutoActiveFirstOptionExample { | ||||
|   myControl: FormControl = new FormControl(); | ||||
|   options = ['One', 'Two', 'Three']; | ||||
|   filteredOptions: Observable<string[]>; | ||||
| 
 | ||||
|   ngOnInit() { | ||||
|     this.filteredOptions = this.myControl.valueChanges.pipe( | ||||
|       startWith(''), | ||||
|       map(val => this.filter(val)) | ||||
|     ); | ||||
|   } | ||||
| 
 | ||||
|   filter(val: string): string[] { | ||||
|     return this.options.filter(option => option.toLowerCase().indexOf(val.toLowerCase()) === 0); | ||||
|   } | ||||
| 
 | ||||
| } | ||||
| @ -0,0 +1,7 @@ | ||||
| <mat-form-field class="example-full-width"> | ||||
|   <input matInput [matDatepicker]="picker" placeholder="Choose a date"> | ||||
|   <mat-datepicker-toggle matSuffix [for]="picker"> | ||||
|     <mat-icon matDatepickerToggleIcon>keyboard_arrow_down</mat-icon> | ||||
|   </mat-datepicker-toggle> | ||||
|   <mat-datepicker #picker></mat-datepicker> | ||||
| </mat-form-field> | ||||
| @ -0,0 +1,9 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| 
 | ||||
| /** @title Datepicker with custom icon */ | ||||
| @Component({ | ||||
|   selector: 'datepicker-custom-icon-example', | ||||
|   templateUrl: 'datepicker-custom-icon-example.html', | ||||
|   styleUrls: ['datepicker-custom-icon-example.css'], | ||||
| }) | ||||
| export class DatepickerCustomIconExample {} | ||||
| @ -0,0 +1 @@ | ||||
| /** No CSS for this example */ | ||||
| @ -0,0 +1,7 @@ | ||||
| <mat-list> | ||||
|   <mat-list-item>Item 1</mat-list-item> | ||||
|   <mat-divider></mat-divider> | ||||
|   <mat-list-item>Item 2</mat-list-item> | ||||
|   <mat-divider></mat-divider> | ||||
|   <mat-list-item>Item 3</mat-list-item> | ||||
| </mat-list> | ||||
| @ -0,0 +1,11 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| 
 | ||||
| /** | ||||
|  * @title Basic divider | ||||
|  */ | ||||
| @Component({ | ||||
|   selector: 'divider-overview-example', | ||||
|   templateUrl: 'divider-overview-example.html', | ||||
|   styleUrls: ['divider-overview-example.css'], | ||||
| }) | ||||
| export class DividerOverviewExample {} | ||||
| @ -1,20 +1,20 @@ | ||||
| .example-container { | ||||
|     display: flex; | ||||
|     flex-direction: column; | ||||
|   display: flex; | ||||
|   flex-direction: column; | ||||
| } | ||||
| 
 | ||||
| .example-container > * { | ||||
|     width: 100%; | ||||
|   width: 100%; | ||||
| } | ||||
| 
 | ||||
| .example-container form { | ||||
|     margin-bottom: 20px; | ||||
|   margin-bottom: 20px; | ||||
| } | ||||
| 
 | ||||
| .example-container form > * { | ||||
|     margin: 5px 0; | ||||
|   margin: 5px 0; | ||||
| } | ||||
| 
 | ||||
| .example-container .mat-radio-button { | ||||
|     margin: 0 5px; | ||||
|   margin: 0 5px; | ||||
| } | ||||
| @ -0,0 +1,34 @@ | ||||
| <div class="example-container"> | ||||
|   <form class="example-container" [formGroup]="options"> | ||||
|     <mat-checkbox formControlName="hideRequired">Hide required marker</mat-checkbox> | ||||
|     <div> | ||||
|       <label>Float label: </label> | ||||
|       <mat-radio-group formControlName="floatLabel"> | ||||
|         <mat-radio-button value="auto">Auto</mat-radio-button> | ||||
|         <mat-radio-button value="always">Always</mat-radio-button> | ||||
|         <mat-radio-button value="never">Never</mat-radio-button> | ||||
|       </mat-radio-group> | ||||
|     </div> | ||||
|   </form> | ||||
| 
 | ||||
|   <mat-form-field | ||||
|       [hideRequiredMarker]="options.value.hideRequired" | ||||
|       [floatLabel]="options.value.floatLabel"> | ||||
|     <input matInput placeholder="Simple placeholder" required> | ||||
|   </mat-form-field> | ||||
| 
 | ||||
|   <mat-form-field [floatLabel]="options.value.floatLabel"> | ||||
|     <mat-label>Both a label and a placeholder</mat-label> | ||||
|     <input matInput placeholder="Simple placeholder"> | ||||
|   </mat-form-field> | ||||
| 
 | ||||
|   <mat-form-field | ||||
|       [hideRequiredMarker]="options.value.hideRequired" | ||||
|       [floatLabel]="options.value.floatLabel"> | ||||
|     <mat-select required> | ||||
|       <mat-option>-- None --</mat-option> | ||||
|       <mat-option value="option">Option</mat-option> | ||||
|     </mat-select> | ||||
|     <mat-placeholder><mat-icon>favorite</mat-icon> <b> Fancy</b> <i> placeholder</i></mat-placeholder> | ||||
|   </mat-form-field> | ||||
| </div> | ||||
| @ -0,0 +1,19 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| import {FormBuilder, FormGroup} from '@angular/forms'; | ||||
| 
 | ||||
| /** @title Form field with label */ | ||||
| @Component({ | ||||
|   selector: 'form-field-label-example', | ||||
|   templateUrl: 'form-field-label-example.html', | ||||
|   styleUrls: ['form-field-label-example.css'] | ||||
| }) | ||||
| export class FormFieldLabelExample { | ||||
|   options: FormGroup; | ||||
| 
 | ||||
|   constructor(fb: FormBuilder) { | ||||
|     this.options = fb.group({ | ||||
|       hideRequired: false, | ||||
|       floatLabel: 'auto', | ||||
|     }); | ||||
|   } | ||||
| } | ||||
| @ -1,31 +0,0 @@ | ||||
| <div class="example-container"> | ||||
|     <form class="example-container" [formGroup]="options"> | ||||
|         <mat-checkbox formControlName="hideRequired">Hide required marker</mat-checkbox> | ||||
|         <div> | ||||
|             <label>Float placeholder: </label> | ||||
|             <mat-radio-group formControlName="floatPlaceholder"> | ||||
|                 <mat-radio-button value="auto">Auto</mat-radio-button> | ||||
|                 <mat-radio-button value="always">Always</mat-radio-button> | ||||
|                 <mat-radio-button value="never">Never</mat-radio-button> | ||||
|             </mat-radio-group> | ||||
|         </div> | ||||
|     </form> | ||||
| 
 | ||||
|     <mat-form-field | ||||
|         [hideRequiredMarker]="options.value.hideRequired" | ||||
|         [floatPlaceholder]="options.value.floatPlaceholder"> | ||||
|         <input matInput placeholder="Simple placeholder" required> | ||||
|     </mat-form-field> | ||||
| 
 | ||||
|     <mat-form-field | ||||
|         [hideRequiredMarker]="options.value.hideRequired" | ||||
|         [floatPlaceholder]="options.value.floatPlaceholder"> | ||||
|         <mat-select required> | ||||
|             <mat-option>-- None --</mat-option> | ||||
|             <mat-option value="option">Option</mat-option> | ||||
|         </mat-select> | ||||
|         <mat-placeholder> | ||||
|             <mat-icon>favorite</mat-icon> | ||||
|             <b> Fancy</b> <i> placeholder</i></mat-placeholder> | ||||
|     </mat-form-field> | ||||
| </div> | ||||
| @ -1,21 +0,0 @@ | ||||
| import { Component } from '@angular/core'; | ||||
| import { FormBuilder, FormGroup } from '@angular/forms'; | ||||
| 
 | ||||
| /** @title Form field with placeholder */ | ||||
| @Component({ | ||||
|     selector   : 'form-field-placeholder-example', | ||||
|     templateUrl: 'form-field-placeholder-example.html', | ||||
|     styleUrls  : ['form-field-placeholder-example.css'] | ||||
| }) | ||||
| export class FormFieldPlaceholderExample | ||||
| { | ||||
|     options: FormGroup; | ||||
| 
 | ||||
|     constructor(fb: FormBuilder) | ||||
|     { | ||||
|         this.options = fb.group({ | ||||
|             hideRequired    : false, | ||||
|             floatPlaceholder: 'auto' | ||||
|         }); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1 @@ | ||||
| /** No CSS for this example */ | ||||
							
								
								
									
										19
									
								
								src/assets/angular-material-examples/icon-svg-example/icon-svg-example.ts
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										19
									
								
								src/assets/angular-material-examples/icon-svg-example/icon-svg-example.ts
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,19 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| import {DomSanitizer} from '@angular/platform-browser'; | ||||
| import {MatIconRegistry} from '@angular/material'; | ||||
| 
 | ||||
| /** | ||||
|  * @title SVG icons | ||||
|  */ | ||||
| @Component({ | ||||
|   selector: 'icon-svg-example', | ||||
|   templateUrl: 'icon-svg-example.html', | ||||
|   styleUrls: ['icon-svg-example.css'], | ||||
| }) | ||||
| export class IconSvgExample { | ||||
|   constructor(iconRegistry: MatIconRegistry, sanitizer: DomSanitizer) { | ||||
|     iconRegistry.addSvgIcon( | ||||
|         'thumbs-up', | ||||
|         sanitizer.bypassSecurityTrustResourceUrl('assets/images/examples/thumbup-icon.svg')); | ||||
|   } | ||||
| } | ||||
| @ -1,20 +0,0 @@ | ||||
| import { Component } from '@angular/core'; | ||||
| import { DomSanitizer } from '@angular/platform-browser'; | ||||
| import { MatIconRegistry } from '@angular/material'; | ||||
| 
 | ||||
| /** | ||||
|  * @title SVG icons | ||||
|  */ | ||||
| @Component({ | ||||
|     selector   : 'icon-svg-example', | ||||
|     templateUrl: 'icon-svg-example.html' | ||||
| }) | ||||
| export class IconSvgExample | ||||
| { | ||||
|     constructor(iconRegistry: MatIconRegistry, sanitizer: DomSanitizer) | ||||
|     { | ||||
|         iconRegistry.addSvgIcon( | ||||
|             'thumbs-up', | ||||
|             sanitizer.bypassSecurityTrustResourceUrl('assets/images/examples/thumbup-icon.svg')); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,16 @@ | ||||
| .example-container { | ||||
|   width: 500px; | ||||
|   height: 300px; | ||||
|   border: 1px solid rgba(0, 0, 0, 0.5); | ||||
| } | ||||
| 
 | ||||
| .example-sidenav-content { | ||||
|   display: flex; | ||||
|   height: 100%; | ||||
|   align-items: center; | ||||
|   justify-content: center; | ||||
| } | ||||
| 
 | ||||
| .example-sidenav { | ||||
|   padding: 20px; | ||||
| } | ||||
| @ -0,0 +1,16 @@ | ||||
| <mat-drawer-container class="example-container" autosize> | ||||
|   <mat-drawer #drawer class="example-sidenav" mode="side"> | ||||
|     <p>Auto-resizing sidenav</p> | ||||
|     <p *ngIf="showFiller">Lorem, ipsum dolor sit amet consectetur.</p> | ||||
|     <button (click)="showFiller = !showFiller" mat-raised-button> | ||||
|       Toggle extra text | ||||
|     </button> | ||||
|   </mat-drawer> | ||||
| 
 | ||||
|   <div class="example-sidenav-content"> | ||||
|     <button type="button" mat-button (click)="drawer.toggle()"> | ||||
|       Toggle sidenav | ||||
|     </button> | ||||
|   </div> | ||||
| 
 | ||||
| </mat-drawer-container> | ||||
| @ -0,0 +1,13 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| 
 | ||||
| /** | ||||
|  * @title Autosize sidenav | ||||
|  */ | ||||
| @Component({ | ||||
|   selector: 'sidenav-autosize-example', | ||||
|   templateUrl: 'sidenav-autosize-example.html', | ||||
|   styleUrls: ['sidenav-autosize-example.css'], | ||||
| }) | ||||
| export class SidenavAutosizeExample { | ||||
|   showFiller = false; | ||||
| } | ||||
| @ -1,26 +0,0 @@ | ||||
| .example-sidenav-fab-container { | ||||
|     width: 500px; | ||||
|     height: 300px; | ||||
|     border: 1px solid rgba(0, 0, 0, 0.5); | ||||
| } | ||||
| 
 | ||||
| .example-sidenav-fab-container mat-sidenav { | ||||
|     max-width: 200px; | ||||
| } | ||||
| 
 | ||||
| .example-sidenav-fab-container .mat-sidenav-content, | ||||
| .example-sidenav-fab-container mat-sidenav { | ||||
|     display: flex; | ||||
|     overflow: visible; | ||||
| } | ||||
| 
 | ||||
| .example-scrolling-content { | ||||
|     overflow: auto; | ||||
|     height: 100%; | ||||
| } | ||||
| 
 | ||||
| .example-fab.mat-mini-fab { | ||||
|     position: absolute; | ||||
|     right: 20px; | ||||
|     bottom: 10px; | ||||
| } | ||||
| @ -1,32 +0,0 @@ | ||||
| <mat-sidenav-container class="example-sidenav-fab-container"> | ||||
|     <mat-sidenav #sidenav mode="side" opened="true"> | ||||
|         <button mat-mini-fab class="example-fab" (click)="sidenav.toggle()"> | ||||
|             <mat-icon>add</mat-icon> | ||||
|         </button> | ||||
|         <div class="example-scrolling-content"> | ||||
|             Lorem ipsum dolor sit amet, pede a libero aenean phasellus, lectus metus sint ut risus, | ||||
|             fusce vel in pellentesque. Nisl rutrum etiam morbi consectetuer tempor magna, aenean nullam | ||||
|             nunc id, neque vivamus interdum sociis nulla scelerisque sem, dolor id wisi turpis magna | ||||
|             aliquam magna. Risus accumsan hac eget etiam donec sed, senectus erat mattis quam, tempor | ||||
|             vel urna occaecat cras, metus urna augue nec at. Et morbi amet dui praesent, nec eu at, | ||||
|             ligula ipsum dui sollicitudin, quis nisl massa viverra ligula, mauris fermentum orci arcu | ||||
|             enim fringilla. Arcu erat nulla in aenean lacinia ullamcorper, urna ante nam et sagittis, | ||||
|             tristique vehicula nibh ipsum vivamus, proin proin. Porta commodo nibh quis libero amet. | ||||
|             Taciti dui, sapien consectetuer. | ||||
|         </div> | ||||
|     </mat-sidenav> | ||||
|     <button mat-mini-fab class="example-fab" (click)="sidenav.toggle()"> | ||||
|         <mat-icon>add</mat-icon> | ||||
|     </button> | ||||
|     <div class="example-scrolling-content"> | ||||
|         Lorem ipsum dolor sit amet, pede a libero aenean phasellus, lectus metus sint ut risus, fusce | ||||
|         vel in pellentesque. Nisl rutrum etiam morbi consectetuer tempor magna, aenean nullam nunc id, | ||||
|         neque vivamus interdum sociis nulla scelerisque sem, dolor id wisi turpis magna aliquam magna. | ||||
|         Risus accumsan hac eget etiam donec sed, senectus erat mattis quam, tempor vel urna occaecat | ||||
|         cras, metus urna augue nec at. Et morbi amet dui praesent, nec eu at, ligula ipsum dui | ||||
|         sollicitudin, quis nisl massa viverra ligula, mauris fermentum orci arcu enim fringilla. Arcu | ||||
|         erat nulla in aenean lacinia ullamcorper, urna ante nam et sagittis, tristique vehicula nibh | ||||
|         ipsum vivamus, proin proin. Porta commodo nibh quis libero amet. Taciti dui, sapien | ||||
|         consectetuer. | ||||
|     </div> | ||||
| </mat-sidenav-container> | ||||
| @ -1,15 +0,0 @@ | ||||
| import { Component, ViewEncapsulation } from '@angular/core'; | ||||
| 
 | ||||
| /** | ||||
|  * @title Sidenav with a FAB | ||||
|  */ | ||||
| @Component({ | ||||
|     selector           : 'sidenav-fab-example', | ||||
|     templateUrl        : 'sidenav-fab-example.html', | ||||
|     styleUrls          : ['sidenav-fab-example.css'], | ||||
|     encapsulation      : ViewEncapsulation.None, | ||||
|     preserveWhitespaces: false | ||||
| }) | ||||
| export class SidenavFabExample | ||||
| { | ||||
| } | ||||
| @ -0,0 +1,19 @@ | ||||
| <mat-form-field> | ||||
|   <mat-select placeholder="Horizontal position" [(value)]="horizontalPosition"> | ||||
|     <mat-option value="start">Start</mat-option> | ||||
|     <mat-option value="center">Center</mat-option> | ||||
|     <mat-option value="end">End</mat-option> | ||||
|     <mat-option value="left">Left</mat-option> | ||||
|     <mat-option value="right">Right</mat-option> | ||||
|   </mat-select> | ||||
| </mat-form-field> | ||||
| <mat-form-field> | ||||
|   <mat-select placeholder="Vertical position" [(value)]="verticalPosition"> | ||||
|     <mat-option value="top">Top</mat-option> | ||||
|     <mat-option value="bottom">Bottom</mat-option> | ||||
|   </mat-select> | ||||
| </mat-form-field> | ||||
| 
 | ||||
| <button mat-button (click)="openSnackBar()" aria-label="Show an example snack-bar"> | ||||
|   Pool party! | ||||
| </button> | ||||
| @ -0,0 +1,29 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| import { | ||||
|   MatSnackBar, | ||||
|   MatSnackBarHorizontalPosition, | ||||
|   MatSnackBarVerticalPosition, | ||||
| } from '@angular/material'; | ||||
| 
 | ||||
| /** | ||||
|  * @title Snack-bar with configurable position | ||||
|  */ | ||||
| @Component({ | ||||
|   selector: 'snack-bar-position-example', | ||||
|   templateUrl: 'snack-bar-position-example.html', | ||||
| }) | ||||
| export class SnackBarPositionExample { | ||||
| 
 | ||||
|   horizontalPosition: MatSnackBarHorizontalPosition = 'start'; | ||||
|   verticalPosition: MatSnackBarVerticalPosition = 'bottom'; | ||||
| 
 | ||||
|   constructor(public snackBar: MatSnackBar) {} | ||||
| 
 | ||||
|   openSnackBar() { | ||||
|     this.snackBar.open('Canonball!!', 'End now', { | ||||
|       duration: 500, | ||||
|       horizontalPosition: this.horizontalPosition, | ||||
|       verticalPosition: this.verticalPosition, | ||||
|     }); | ||||
|   } | ||||
| } | ||||
| @ -0,0 +1,15 @@ | ||||
| .example-container { | ||||
|   display: flex; | ||||
|   flex-direction: column; | ||||
|   max-height: 500px; | ||||
|   min-width: 300px; | ||||
| } | ||||
| 
 | ||||
| .mat-table { | ||||
|   overflow: auto; | ||||
|   max-height: 500px; | ||||
| } | ||||
| 
 | ||||
| .mat-column-select { | ||||
|   overflow: visible; | ||||
| } | ||||
| @ -0,0 +1,49 @@ | ||||
| <div class="example-container mat-elevation-z8"> | ||||
|   <mat-table #table [dataSource]="dataSource"> | ||||
| 
 | ||||
|     <!-- Checkbox Column --> | ||||
|     <ng-container matColumnDef="select"> | ||||
|       <mat-header-cell *matHeaderCellDef> | ||||
|         <mat-checkbox (change)="$event ? masterToggle() : null" | ||||
|                       [checked]="selection.hasValue() && isAllSelected()" | ||||
|                       [indeterminate]="selection.hasValue() && !isAllSelected()"> | ||||
|         </mat-checkbox> | ||||
|       </mat-header-cell> | ||||
|       <mat-cell *matCellDef="let row"> | ||||
|         <mat-checkbox (click)="$event.stopPropagation()" | ||||
|                       (change)="$event ? selection.toggle(row) : null" | ||||
|                       [checked]="selection.isSelected(row)"> | ||||
|         </mat-checkbox> | ||||
|       </mat-cell> | ||||
|     </ng-container> | ||||
| 
 | ||||
|     <!-- Position Column --> | ||||
|     <ng-container matColumnDef="position"> | ||||
|       <mat-header-cell *matHeaderCellDef> No. </mat-header-cell> | ||||
|       <mat-cell *matCellDef="let element"> {{element.position}} </mat-cell> | ||||
|     </ng-container> | ||||
| 
 | ||||
|     <!-- Name Column --> | ||||
|     <ng-container matColumnDef="name"> | ||||
|       <mat-header-cell *matHeaderCellDef> Name </mat-header-cell> | ||||
|       <mat-cell *matCellDef="let element"> {{element.name}} </mat-cell> | ||||
|     </ng-container> | ||||
| 
 | ||||
|     <!-- Weight Column --> | ||||
|     <ng-container matColumnDef="weight"> | ||||
|       <mat-header-cell *matHeaderCellDef> Weight </mat-header-cell> | ||||
|       <mat-cell *matCellDef="let element"> {{element.weight}} </mat-cell> | ||||
|     </ng-container> | ||||
| 
 | ||||
|     <!-- Symbol Column --> | ||||
|     <ng-container matColumnDef="symbol"> | ||||
|       <mat-header-cell *matHeaderCellDef> Symbol </mat-header-cell> | ||||
|       <mat-cell *matCellDef="let element"> {{element.symbol}} </mat-cell> | ||||
|     </ng-container> | ||||
| 
 | ||||
|     <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row> | ||||
|     <mat-row *matRowDef="let row; columns: displayedColumns;" | ||||
|              (click)="selection.toggle(row)"> | ||||
|     </mat-row> | ||||
|   </mat-table> | ||||
| </div> | ||||
| @ -0,0 +1,61 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| import {MatTableDataSource} from '@angular/material'; | ||||
| import {SelectionModel} from '@angular/cdk/collections'; | ||||
| 
 | ||||
| /** | ||||
|  * @title Table with selection | ||||
|  */ | ||||
| @Component({ | ||||
|   selector: 'table-selection-example', | ||||
|   styleUrls: ['table-selection-example.css'], | ||||
|   templateUrl: 'table-selection-example.html', | ||||
| }) | ||||
| export class TableSelectionExample { | ||||
|   displayedColumns = ['select', 'position', 'name', 'weight', 'symbol']; | ||||
|   dataSource = new MatTableDataSource<Element>(ELEMENT_DATA); | ||||
|   selection = new SelectionModel<Element>(true, []); | ||||
| 
 | ||||
|   /** Whether the number of selected elements matches the total number of rows. */ | ||||
|   isAllSelected() { | ||||
|     const numSelected = this.selection.selected.length; | ||||
|     const numRows = this.dataSource.data.length; | ||||
|     return numSelected === numRows; | ||||
|   } | ||||
| 
 | ||||
|   /** Selects all rows if they are not all selected; otherwise clear selection. */ | ||||
|   masterToggle() { | ||||
|     this.isAllSelected() ? | ||||
|         this.selection.clear() : | ||||
|         this.dataSource.data.forEach(row => this.selection.select(row)); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| export interface Element { | ||||
|   name: string; | ||||
|   position: number; | ||||
|   weight: number; | ||||
|   symbol: string; | ||||
| } | ||||
| 
 | ||||
| const ELEMENT_DATA: Element[] = [ | ||||
|   {position: 1, name: 'Hydrogen', weight: 1.0079, symbol: 'H'}, | ||||
|   {position: 2, name: 'Helium', weight: 4.0026, symbol: 'He'}, | ||||
|   {position: 3, name: 'Lithium', weight: 6.941, symbol: 'Li'}, | ||||
|   {position: 4, name: 'Beryllium', weight: 9.0122, symbol: 'Be'}, | ||||
|   {position: 5, name: 'Boron', weight: 10.811, symbol: 'B'}, | ||||
|   {position: 6, name: 'Carbon', weight: 12.0107, symbol: 'C'}, | ||||
|   {position: 7, name: 'Nitrogen', weight: 14.0067, symbol: 'N'}, | ||||
|   {position: 8, name: 'Oxygen', weight: 15.9994, symbol: 'O'}, | ||||
|   {position: 9, name: 'Fluorine', weight: 18.9984, symbol: 'F'}, | ||||
|   {position: 10, name: 'Neon', weight: 20.1797, symbol: 'Ne'}, | ||||
|   {position: 11, name: 'Sodium', weight: 22.9897, symbol: 'Na'}, | ||||
|   {position: 12, name: 'Magnesium', weight: 24.305, symbol: 'Mg'}, | ||||
|   {position: 13, name: 'Aluminum', weight: 26.9815, symbol: 'Al'}, | ||||
|   {position: 14, name: 'Silicon', weight: 28.0855, symbol: 'Si'}, | ||||
|   {position: 15, name: 'Phosphorus', weight: 30.9738, symbol: 'P'}, | ||||
|   {position: 16, name: 'Sulfur', weight: 32.065, symbol: 'S'}, | ||||
|   {position: 17, name: 'Chlorine', weight: 35.453, symbol: 'Cl'}, | ||||
|   {position: 18, name: 'Argon', weight: 39.948, symbol: 'Ar'}, | ||||
|   {position: 19, name: 'Potassium', weight: 39.0983, symbol: 'K'}, | ||||
|   {position: 20, name: 'Calcium', weight: 40.078, symbol: 'Ca'}, | ||||
| ]; | ||||
| @ -0,0 +1,3 @@ | ||||
| button { | ||||
|   margin: 8px; | ||||
| } | ||||
| @ -0,0 +1,7 @@ | ||||
| <button mat-raised-button matTooltip="Tooltip!" matTooltipShowDelay="1000"> | ||||
|   My tooltip waits one second to show | ||||
| </button> | ||||
| 
 | ||||
| <button mat-raised-button matTooltip="Tooltip!" matTooltipHideDelay="2000"> | ||||
|   My tooltip waits two seconds to hide | ||||
| </button> | ||||
							
								
								
									
										11
									
								
								src/assets/angular-material-examples/tooltip-delay/tooltip-delay-example.ts
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										11
									
								
								src/assets/angular-material-examples/tooltip-delay/tooltip-delay-example.ts
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,11 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| 
 | ||||
| /** | ||||
|  * @title Tooltip with a show and hide delay | ||||
|  */ | ||||
| @Component({ | ||||
|   selector: 'tooltip-delay-example', | ||||
|   templateUrl: 'tooltip-delay-example.html', | ||||
|   styleUrls: ['tooltip-delay-example.css'], | ||||
| }) | ||||
| export class TooltipDelayExample {} | ||||
| @ -0,0 +1 @@ | ||||
| /** No CSS for this example */ | ||||
| @ -0,0 +1,5 @@ | ||||
| <button mat-raised-button (click)="tooltip.show()"> Show tooltip </button> | ||||
| 
 | ||||
| <span matTooltip="This is the tooltip message" #tooltip="matTooltip"> | ||||
|   I have a tooltip | ||||
| </span> | ||||
| @ -0,0 +1,11 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| 
 | ||||
| /** | ||||
|  * @title Tooltip that can be manually shown/hidden. | ||||
|  */ | ||||
| @Component({ | ||||
|   selector: 'tooltip-manual-example', | ||||
|   templateUrl: 'tooltip-manual-example.html', | ||||
|   styleUrls: ['tooltip-manual-example.css'], | ||||
| }) | ||||
| export class TooltipManualExample {} | ||||
| @ -0,0 +1 @@ | ||||
| /** No CSS for this example */ | ||||
| @ -0,0 +1,3 @@ | ||||
| <button mat-raised-button matTooltip="By default, I delay"> | ||||
|   Button with delay-default tooltip | ||||
| </button> | ||||
| @ -0,0 +1,22 @@ | ||||
| import {Component} from '@angular/core'; | ||||
| import {MAT_TOOLTIP_DEFAULT_OPTIONS, MatTooltipDefaultOptions} from '@angular/material'; | ||||
| 
 | ||||
| /** Custom options the configure the tooltip's default show/hide delays. */ | ||||
| export const myCustomTooltipDefaults: MatTooltipDefaultOptions = { | ||||
|   showDelay: 1000, | ||||
|   hideDelay: 1000, | ||||
|   touchendHideDelay: 1000, | ||||
| }; | ||||
| 
 | ||||
| /** | ||||
|  * @title Tooltip with a show and hide delay | ||||
|  */ | ||||
| @Component({ | ||||
|   selector: 'tooltip-modified-defaults-example', | ||||
|   templateUrl: 'tooltip-modified-defaults-example.html', | ||||
|   styleUrls: ['tooltip-modified-defaults-example.css'], | ||||
|   providers: [ | ||||
|     {provide: MAT_TOOLTIP_DEFAULT_OPTIONS, useValue: myCustomTooltipDefaults} | ||||
|   ], | ||||
| }) | ||||
| export class TooltipModifiedDefaultsExample {} | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user