1/* 2 * Copyright (C) 2022 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17import {ClipboardModule} from '@angular/cdk/clipboard'; 18import {DragDropModule} from '@angular/cdk/drag-drop'; 19import {CdkMenuModule} from '@angular/cdk/menu'; 20import {ScrollingModule} from '@angular/cdk/scrolling'; 21import {CommonModule} from '@angular/common'; 22import {HttpClientModule} from '@angular/common/http'; 23import {CUSTOM_ELEMENTS_SCHEMA, ErrorHandler, NgModule} from '@angular/core'; 24import {FormsModule, ReactiveFormsModule} from '@angular/forms'; 25import {MatButtonModule} from '@angular/material/button'; 26import {MatCardModule} from '@angular/material/card'; 27import {MatCheckboxModule} from '@angular/material/checkbox'; 28import {MatDialogModule} from '@angular/material/dialog'; 29import {MatDividerModule} from '@angular/material/divider'; 30import {MatFormFieldModule} from '@angular/material/form-field'; 31import {MatGridListModule} from '@angular/material/grid-list'; 32import {MatIconModule} from '@angular/material/icon'; 33import {MatInputModule} from '@angular/material/input'; 34import {MatListModule} from '@angular/material/list'; 35import {MatProgressBarModule} from '@angular/material/progress-bar'; 36import {MatProgressSpinnerModule} from '@angular/material/progress-spinner'; 37import {MatRadioModule} from '@angular/material/radio'; 38import {MatSelectModule} from '@angular/material/select'; 39import {MatSliderModule} from '@angular/material/slider'; 40import {MatSnackBarModule} from '@angular/material/snack-bar'; 41import {MatTabsModule} from '@angular/material/tabs'; 42import {MatToolbarModule} from '@angular/material/toolbar'; 43import {MatTooltipModule} from '@angular/material/tooltip'; 44import {BrowserModule, Title} from '@angular/platform-browser'; 45import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; 46import {CollapsedSectionsComponent} from 'viewers/components/collapsed_sections_component'; 47import {CollapsibleSectionTitleComponent} from 'viewers/components/collapsible_section_title_component'; 48import {CoordinatesTableComponent} from 'viewers/components/coordinates_table_component'; 49import {HierarchyComponent} from 'viewers/components/hierarchy_component'; 50import {HierarchyTreeNodeDataViewComponent} from 'viewers/components/hierarchy_tree_node_data_view_component'; 51import {ImeAdditionalPropertiesComponent} from 'viewers/components/ime_additional_properties_component'; 52import {PropertiesComponent} from 'viewers/components/properties_component'; 53import {PropertiesTableComponent} from 'viewers/components/properties_table_component'; 54import {PropertyTreeNodeDataViewComponent} from 'viewers/components/property_tree_node_data_view_component'; 55import {RectsComponent} from 'viewers/components/rects/rects_component'; 56import {SelectWithFilterComponent} from 'viewers/components/select_with_filter_component'; 57import {SurfaceFlingerPropertyGroupsComponent} from 'viewers/components/surface_flinger_property_groups_component'; 58import {TransformMatrixComponent} from 'viewers/components/transform_matrix_component'; 59import {TreeComponent} from 'viewers/components/tree_component'; 60import {TreeNodeComponent} from 'viewers/components/tree_node_component'; 61import {UserOptionsComponent} from 'viewers/components/user_options_component'; 62import {ViewerInputMethodComponent} from 'viewers/components/viewer_input_method_component'; 63import {ViewCapturePropertyGroupsComponent} from 'viewers/components/view_capture_property_groups_component'; 64import {ProtologScrollDirective} from 'viewers/viewer_protolog/scroll_strategy/protolog_scroll_directive'; 65import {ViewerProtologComponent} from 'viewers/viewer_protolog/viewer_protolog_component'; 66import {ViewerScreenRecordingComponent} from 'viewers/viewer_screen_recording/viewer_screen_recording_component'; 67import {ViewerSurfaceFlingerComponent} from 'viewers/viewer_surface_flinger/viewer_surface_flinger_component'; 68import {TransactionsScrollDirective} from 'viewers/viewer_transactions/scroll_strategy/transactions_scroll_directive'; 69import {ViewerTransactionsComponent} from 'viewers/viewer_transactions/viewer_transactions_component'; 70import {ViewerTransitionsComponent} from 'viewers/viewer_transitions/viewer_transitions_component'; 71import {ViewerViewCaptureComponent} from 'viewers/viewer_view_capture/viewer_view_capture_component'; 72import {ViewerWindowManagerComponent} from 'viewers/viewer_window_manager/viewer_window_manager_component'; 73import {AdbProxyComponent} from './components/adb_proxy_component'; 74import {AppComponent} from './components/app_component'; 75import { 76 MatDrawer, 77 MatDrawerContainer, 78 MatDrawerContent, 79} from './components/bottomnav/bottom_drawer_component'; 80import {CollectTracesComponent} from './components/collect_traces_component'; 81import {LoadProgressComponent} from './components/load_progress_component'; 82import {ShortcutsComponent} from './components/shortcuts_component'; 83import {SnackBarComponent} from './components/snack_bar_component'; 84import {DefaultTimelineRowComponent} from './components/timeline/expanded-timeline/default_timeline_row_component'; 85import {ExpandedTimelineComponent} from './components/timeline/expanded-timeline/expanded_timeline_component'; 86import {TransitionTimelineComponent} from './components/timeline/expanded-timeline/transition_timeline_component'; 87import {MiniTimelineComponent} from './components/timeline/mini-timeline/mini_timeline_component'; 88import {SliderComponent} from './components/timeline/mini-timeline/slider_component'; 89import {TimelineComponent} from './components/timeline/timeline_component'; 90import {TraceConfigComponent} from './components/trace_config_component'; 91import {TraceViewComponent} from './components/trace_view_component'; 92import {UploadTracesComponent} from './components/upload_traces_component'; 93import {WebAdbComponent} from './components/web_adb_component'; 94import {GlobalErrorHandler} from './global_error_handler'; 95 96@NgModule({ 97 declarations: [ 98 AppComponent, 99 ViewerWindowManagerComponent, 100 ViewerSurfaceFlingerComponent, 101 ViewerInputMethodComponent, 102 ViewerProtologComponent, 103 ViewerTransactionsComponent, 104 ViewerScreenRecordingComponent, 105 ViewerTransitionsComponent, 106 ViewerViewCaptureComponent, 107 CollectTracesComponent, 108 UploadTracesComponent, 109 AdbProxyComponent, 110 WebAdbComponent, 111 TraceConfigComponent, 112 HierarchyComponent, 113 PropertiesComponent, 114 RectsComponent, 115 TraceViewComponent, 116 TreeComponent, 117 TreeNodeComponent, 118 HierarchyTreeNodeDataViewComponent, 119 PropertyTreeNodeDataViewComponent, 120 SurfaceFlingerPropertyGroupsComponent, 121 TransformMatrixComponent, 122 PropertiesTableComponent, 123 ImeAdditionalPropertiesComponent, 124 CoordinatesTableComponent, 125 TimelineComponent, 126 MiniTimelineComponent, 127 ExpandedTimelineComponent, 128 DefaultTimelineRowComponent, 129 TransitionTimelineComponent, 130 SnackBarComponent, 131 MatDrawer, 132 MatDrawerContent, 133 MatDrawerContainer, 134 LoadProgressComponent, 135 SliderComponent, 136 ProtologScrollDirective, 137 TransactionsScrollDirective, 138 ViewCapturePropertyGroupsComponent, 139 SelectWithFilterComponent, 140 ShortcutsComponent, 141 CollapsedSectionsComponent, 142 CollapsibleSectionTitleComponent, 143 UserOptionsComponent, 144 ], 145 imports: [ 146 BrowserModule, 147 HttpClientModule, 148 CommonModule, 149 MatCardModule, 150 MatButtonModule, 151 MatGridListModule, 152 FormsModule, 153 MatListModule, 154 MatCheckboxModule, 155 MatDividerModule, 156 MatIconModule, 157 MatProgressSpinnerModule, 158 MatProgressBarModule, 159 MatFormFieldModule, 160 MatInputModule, 161 MatSelectModule, 162 BrowserAnimationsModule, 163 HttpClientModule, 164 MatSliderModule, 165 MatRadioModule, 166 MatTooltipModule, 167 MatToolbarModule, 168 MatTabsModule, 169 MatSnackBarModule, 170 ScrollingModule, 171 DragDropModule, 172 ClipboardModule, 173 ReactiveFormsModule, 174 CdkMenuModule, 175 MatDialogModule, 176 ], 177 providers: [Title, {provide: ErrorHandler, useClass: GlobalErrorHandler}], 178 schemas: [CUSTOM_ELEMENTS_SCHEMA], 179 bootstrap: [AppComponent], 180}) 181export class AppModule {} 182